From zhouyx at linux.vnet.ibm.com Sun Apr 1 03:08:28 2012 From: zhouyx at linux.vnet.ibm.com (Sean Chou) Date: Sun, 1 Apr 2012 11:08:28 +0800 Subject: Request for review : 7121314 : Behavior mismatch between AbstractCollection.toArray(T[] ) and its spec In-Reply-To: <4F7791A9.2000200@gmx.de> References: <4F59FB70.8070300@gmx.de> <4F5FD9E2.3060805@gmx.de> <4F61C3F5.2030607@gmx.de> <4F6A2682.7070808@gmx.de> <4F6BA03C.5010906@gmx.de> <4F6CE686.9060206@gmx.de> <4F729B0F.30803@gmx.de> <4F72A1B5.4090209@oracle.com> <4F735D1B.3010007@gmx.de> <4F73AE95.8070900@oracle.com> <4F7791A9.2000200@gmx.de> Message-ID: Hi Ulf, This is a regression testcase, there is no performance issue or future refactoring. Please wait for David's comments. On Sun, Apr 1, 2012 at 7:22 AM, Ulf Zibis wrote: > Hi Sean, > > thanks for your effort. > > Am 31.03.2012 11:43, schrieb Sean Chou: > >> Hi David and Ulf, >> >> The new webrev is at: http://cr.openjdk.java.net/~** >> zhouyx/7121314/webrev.03/< >> http://cr.openjdk.java.net/%**7Ezhouyx/7121314/webrev.03/> >> . >> >> >> About the fix, I remained the previous one. >> About the testcase, I merged the 3 files into one. >> During merging, there are 2 modifications: >> 1. I added static modifier to the 3 classes, which are enclosed by class >> ToArrayTest; >> > You do not need the indirection via main()...run()...test() if you have > all in 1 file. This was only necessary to feature a general usability of > InfraStructure. You can go back to David's 1 + 1 nested class approach > replacing TConcurrentHashMapX by TestCollection and maybe rename realMain() > to test(). > Additionally, loading 4 classes for 1 test would have some performance > impact on the test run, which could be avoided. > > > 2. I removed field TestCollection.fixedSize, which is never read after >> Ulf fixed the bug in testcase. >> > This field would serve to "reset" the TestCollection to fixed default size > without the need of new instantiation for later refactoring or testcase > addition. > > As just discussed before, the doc for setSizeSequence() could be little > more specific: > 71 /* > 72 * Sets the values that size() will return on each use. The > first > 73 * call to size will return sizes[0], then sizes[1] etc. This > 74 * allows us to emulate a concurrent change to the contents of > 75 * the collection without having to perform concurrent changes. > 76 * If sizes[n+1] contains a larger value than on last n-th > invocation, > 77 * the collection will appear to have shrunk when iterated; if > a > 78 * smaller value then the collection will appear to have grown. > 79 * When the last element of sizes is reached, the collection > will > 80 * appear size-fixed. > 81 */ > > > The link to the bug: >> http://bugs.sun.com/**bugdatabase/view_bug.do?bug_**id=7121314 >> The link to the start of the thread: >> http://mail.openjdk.java.net/**pipermail/core-libs-dev/2012-** >> March/009512.html >> > Good idea, to repeat these links. > > -Ulf > > -- Best Regards, Sean Chou From david.holmes at oracle.com Sun Apr 1 03:25:59 2012 From: david.holmes at oracle.com (David Holmes) Date: Sun, 01 Apr 2012 13:25:59 +1000 Subject: Request for review : 7121314 : Behavior mismatch between AbstractCollection.toArray(T[] ) and its spec In-Reply-To: References: <4F59FB70.8070300@gmx.de> <4F5FD9E2.3060805@gmx.de> <4F61C3F5.2030607@gmx.de> <4F6A2682.7070808@gmx.de> <4F6BA03C.5010906@gmx.de> <4F6CE686.9060206@gmx.de> <4F729B0F.30803@gmx.de> <4F72A1B5.4090209@oracle.com> <4F735D1B.3010007@gmx.de> <4F73AE95.8070900@oracle.com> <4F7791A9.2000200@gmx.de> Message-ID: <4F77CAC7.2040709@oracle.com> Simplified testcase below. Let's finalise this please. Thanks, David On 1/04/2012 1:08 PM, Sean Chou wrote: > Hi Ulf, > > This is a regression testcase, there is no performance issue or > future refactoring. > Please wait for David's comments. > > On Sun, Apr 1, 2012 at 7:22 AM, Ulf Zibis > wrote: > > Hi Sean, > > thanks for your effort. > > Am 31.03.2012 11:43, schrieb Sean Chou: > > Hi David and Ulf, > > The new webrev is at: > http://cr.openjdk.java.net/~__zhouyx/7121314/webrev.03/ > > > . > > > About the fix, I remained the previous one. > About the testcase, I merged the 3 files into one. > During merging, there are 2 modifications: > 1. I added static modifier to the 3 classes, which are enclosed > by class ToArrayTest; > > You do not need the indirection via main()...run()...test() if you > have all in 1 file. This was only necessary to feature a general > usability of InfraStructure. You can go back to David's 1 + 1 nested > class approach replacing TConcurrentHashMapX by TestCollection and > maybe rename realMain() to test(). > Additionally, loading 4 classes for 1 test would have some > performance impact on the test run, which could be avoided. > > > 2. I removed field TestCollection.fixedSize, which is never read > after Ulf fixed the bug in testcase. > > This field would serve to "reset" the TestCollection to fixed > default size without the need of new instantiation for later > refactoring or testcase addition. > > As just discussed before, the doc for setSizeSequence() could be > little more specific: > 71 /* > 72 * Sets the values that size() will return on each use. > The first > 73 * call to size will return sizes[0], then sizes[1] > etc. This > 74 * allows us to emulate a concurrent change to the > contents of > 75 * the collection without having to perform concurrent > changes. > 76 * If sizes[n+1] contains a larger value than on last > n-th invocation, > 77 * the collection will appear to have shrunk when > iterated; if a > 78 * smaller value then the collection will appear to > have grown. > 79 * When the last element of sizes is reached, the > collection will > 80 * appear size-fixed. > 81 */ > > > The link to the bug: > http://bugs.sun.com/__bugdatabase/view_bug.do?bug___id=7121314 > > The link to the start of the thread: > http://mail.openjdk.java.net/__pipermail/core-libs-dev/2012-__March/009512.html > > > Good idea, to repeat these links. > > -Ulf > > > > > -- > Best Regards, > Sean Chou > /* * Copyright (c) 2012, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it * under the terms of the GNU General Public License version 2 only, as * published by the Free Software Foundation. * * This code is distributed in the hope that it will be useful, but WITHOUT * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License * version 2 for more details (a copy is included in the LICENSE file that * accompanied this code). * * You should have received a copy of the GNU General Public License version * 2 along with this work; if not, write to the Free Software Foundation, * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. * * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA * or visit www.oracle.com if you need additional information or have any * questions. */ /* * @test * @bug 7121314 * @summary AbstractCollection.toArray(T[]) doesn't return the given array * in concurrent modification. * @author Ulf Zibis, David Holmes */ import java.util.AbstractCollection; import java.util.Arrays; import java.util.Iterator; public class ToArrayTest { static class TestCollection extends AbstractCollection { private final E[] elements; private int[] sizes; private int nextSize; public TestCollection(E[] elements) { this.elements = elements; setSizeSequence(new int[]{elements.length}); } /* * Sets the values that size() will return on each use. The next * call to size will return sizes[0], then sizes[1] etc. This * allows us to emulate a concurrent change to the contents of * the collection without having to perform concurrent changes. * If sizes[n+1] contains a larger value, the collection will appear to * have shrunk when iterated; if a smaller value then the * collection will appear to have grown when iterated */ void setSizeSequence(int... sizes) { this.sizes = sizes; nextSize = 0; } /* can change collection's size after each invocation */ @Override public int size() { return sizes[nextSize == sizes.length-1 ? nextSize : nextSize++]; } @Override public Iterator iterator() { return new Iterator() { int pos = 0; public boolean hasNext() { return pos < sizes[nextSize]; } public E next() { return elements[pos++]; } public void remove() { throw new UnsupportedOperationException("Not supported yet."); } }; } } static final Object[] OBJECTS = { new Object(), new Object(), new Object() }; static final TestCollection CANDIDATE = new TestCollection(OBJECTS); static final int CAP = OBJECTS.length; // capacity of the CANDIDATE static final int LAST = CAP - 1; // last possible array index Object[] a; Object[] res; int last() { return a.length - 1; } protected void test() throws Throwable { // Check array type conversion res = new TestCollection<>(new Object[]{"1", "2"}).toArray(new String[0]); check(res instanceof String[]); check(res.length == 2); check(res[1] == "2"); // Check incompatible type of target array try { res = CANDIDATE.toArray(new String[CAP]); check(false); } catch (Throwable t) { check(t instanceof ArrayStoreException); } // Check more elements than a.length a = new Object[CAP-1]; // appears too small res = CANDIDATE.toArray(a); check(res != a); check(res[LAST] != null); // Check equal elements as a.length a = new Object[CAP]; // appears to match res = CANDIDATE.toArray(a); check(res == a); check(res[last()] != null); // Check equal elements as a.length a = new Object[CAP+1]; // appears too big res = CANDIDATE.toArray(a); check(res == a); check(res[last()] == null); // Check less elements than expected, but more than a.length a = new Object[CAP-2]; // appears too small CANDIDATE.setSizeSequence(CAP, CAP-1); res = CANDIDATE.toArray(a); check(res != a); check(res.length == CAP-1); check(res[LAST-1] != null); // Check less elements than expected, but equal as a.length a = Arrays.copyOf(OBJECTS, CAP); // appears to match CANDIDATE.setSizeSequence(CAP, CAP-1); res = CANDIDATE.toArray(a); check(res == a); check(res[last()] == null); // Check more elements than expected and more than a.length a = new Object[CAP-1]; // appears to match CANDIDATE.setSizeSequence(CAP-1, CAP); res = CANDIDATE.toArray(a); check(res != a); check(res[LAST] != null); // Check more elements than expected, but equal as a.length a = new Object[CAP-1]; // appears to match CANDIDATE.setSizeSequence(CAP-2, CAP-1); res = CANDIDATE.toArray(a); check(res == a); check(res[last()] != null); // Check more elements than expected, but less than a.length a = Arrays.copyOf(OBJECTS, CAP); // appears to match CANDIDATE.setSizeSequence(CAP-2, CAP-1); res = CANDIDATE.toArray(a); check(res == a); check(res[last()] == null); test_7121314(); } /* * Major target of this testcase, bug 7121314. */ protected void test_7121314() throws Throwable { // Check equal elements as a.length, but less than expected a = new Object[CAP-1]; // appears too small CANDIDATE.setSizeSequence(CAP, CAP-1); res = CANDIDATE.toArray(a); check(res == a); check(res[last()] != null); // Check less elements than a.length and less than expected a = Arrays.copyOf(OBJECTS, CAP-1); // appears too small CANDIDATE.setSizeSequence(CAP, CAP-2); res = CANDIDATE.toArray(a); check(res == a); check(res[last()] == null); } public static void main(String[] args) throws Throwable { ToArrayTest testcase = new ToArrayTest(); try { testcase.test(); } catch (Throwable t) { unexpected(t); } System.out.printf("%nPassed = %d, failed = %d%n%n", passed, failed); if (failed > 0) throw new Exception("Some tests failed"); } private static volatile int passed = 0, failed = 0; private static void pass() { passed++; } private static void fail() { failed++; Thread.dumpStack(); } private static void fail(String msg) { System.out.println(msg); fail(); } private static void unexpected(Throwable t) { failed++; t.printStackTrace(); } static void check(boolean cond) { if (cond) pass(); else fail(); } static void equals(Object x, Object y) { if (x == null ? y == null : x.equals(y)) pass(); else {System.out.println(x + " not equal to " + y); fail(); }} } From zhouyx at linux.vnet.ibm.com Sun Apr 1 09:24:28 2012 From: zhouyx at linux.vnet.ibm.com (Sean Chou) Date: Sun, 1 Apr 2012 17:24:28 +0800 Subject: Request for review : 7121314 : Behavior mismatch between AbstractCollection.toArray(T[] ) and its spec In-Reply-To: <4F77CAC7.2040709@oracle.com> References: <4F59FB70.8070300@gmx.de> <4F5FD9E2.3060805@gmx.de> <4F61C3F5.2030607@gmx.de> <4F6A2682.7070808@gmx.de> <4F6BA03C.5010906@gmx.de> <4F6CE686.9060206@gmx.de> <4F729B0F.30803@gmx.de> <4F72A1B5.4090209@oracle.com> <4F735D1B.3010007@gmx.de> <4F73AE95.8070900@oracle.com> <4F7791A9.2000200@gmx.de> <4F77CAC7.2040709@oracle.com> Message-ID: Hi David, I made the new webrev with your modified testcase: http://cr.openjdk.java.net/~zhouyx/7121314/webrev.04/ . The link to the bug: http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=7121314 The link to the start of the thread: http://mail.openjdk.java.net/pipermail/core-libs-dev/2012-March/009512.html On Sun, Apr 1, 2012 at 11:25 AM, David Holmes wrote: > Simplified testcase below. > > Let's finalise this please. > > Thanks, > David > > > On 1/04/2012 1:08 PM, Sean Chou wrote: > >> Hi Ulf, >> >> This is a regression testcase, there is no performance issue or >> future refactoring. >> Please wait for David's comments. >> >> On Sun, Apr 1, 2012 at 7:22 AM, Ulf Zibis > > wrote: >> >> Hi Sean, >> >> thanks for your effort. >> >> Am 31.03.2012 11:43, schrieb Sean Chou: >> >> Hi David and Ulf, >> >> The new webrev is at: >> http://cr.openjdk.java.net/~__**zhouyx/7121314/webrev.03/ >> >> > >> > >> >> >> . >> >> >> About the fix, I remained the previous one. >> About the testcase, I merged the 3 files into one. >> During merging, there are 2 modifications: >> 1. I added static modifier to the 3 classes, which are enclosed >> by class ToArrayTest; >> >> You do not need the indirection via main()...run()...test() if you >> have all in 1 file. This was only necessary to feature a general >> usability of InfraStructure. You can go back to David's 1 + 1 nested >> class approach replacing TConcurrentHashMapX by TestCollection and >> maybe rename realMain() to test(). >> Additionally, loading 4 classes for 1 test would have some >> performance impact on the test run, which could be avoided. >> >> >> 2. I removed field TestCollection.fixedSize, which is never read >> after Ulf fixed the bug in testcase. >> >> This field would serve to "reset" the TestCollection to fixed >> default size without the need of new instantiation for later >> refactoring or testcase addition. >> >> As just discussed before, the doc for setSizeSequence() could be >> little more specific: >> 71 /* >> 72 * Sets the values that size() will return on each use. >> The first >> 73 * call to size will return sizes[0], then sizes[1] >> etc. This >> 74 * allows us to emulate a concurrent change to the >> contents of >> 75 * the collection without having to perform concurrent >> changes. >> 76 * If sizes[n+1] contains a larger value than on last >> n-th invocation, >> 77 * the collection will appear to have shrunk when >> iterated; if a >> 78 * smaller value then the collection will appear to >> have grown. >> 79 * When the last element of sizes is reached, the >> collection will >> 80 * appear size-fixed. >> 81 */ >> >> >> The link to the bug: >> http://bugs.sun.com/__**bugdatabase/view_bug.do?bug___**id=7121314 >> >> >> > >> The link to the start of the thread: >> http://mail.openjdk.java.net/_**_pipermail/core-libs-dev/2012-** >> __March/009512.html >> >> > March/009512.html >> > >> >> Good idea, to repeat these links. >> >> -Ulf >> >> >> >> >> -- >> Best Regards, >> Sean Chou >> >> > > /* > * Copyright (c) 2012, Oracle and/or its affiliates. All rights reserved. > * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. > * > * This code is free software; you can redistribute it and/or modify it > * under the terms of the GNU General Public License version 2 only, as > * published by the Free Software Foundation. > * > * This code is distributed in the hope that it will be useful, but WITHOUT > * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or > * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License > * version 2 for more details (a copy is included in the LICENSE file that > * accompanied this code). > * > * You should have received a copy of the GNU General Public License > version > * 2 along with this work; if not, write to the Free Software Foundation, > * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. > * > * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA > * or visit www.oracle.com if you need additional information or have any > * questions. > */ > > /* > * @test > * @bug 7121314 > * @summary AbstractCollection.toArray(T[]**) doesn't return the given > array > * in concurrent modification. > * @author Ulf Zibis, David Holmes > */ > > import java.util.AbstractCollection; > import java.util.Arrays; > import java.util.Iterator; > > public class ToArrayTest { > > static class TestCollection extends AbstractCollection { > > private final E[] elements; > > > private int[] sizes; > private int nextSize; > > public TestCollection(E[] elements) { > this.elements = elements; > setSizeSequence(new int[]{elements.length}); > } > > /* > * Sets the values that size() will return on each use. The next > > * call to size will return sizes[0], then sizes[1] etc. This > * allows us to emulate a concurrent change to the contents of > * the collection without having to perform concurrent changes. > * If sizes[n+1] contains a larger value, the collection will > appear to > * have shrunk when iterated; if a smaller value then the > * collection will appear to have grown when iterated > > */ > void setSizeSequence(int... sizes) { > this.sizes = sizes; > nextSize = 0; > } > > /* can change collection's size after each invocation */ > > @Override > public int size() { > return sizes[nextSize == sizes.length-1 ? nextSize : > nextSize++]; > } > > @Override > public Iterator iterator() { > return new Iterator() { > > int pos = 0; > public boolean hasNext() { > return pos < sizes[nextSize]; > } > public E next() { > return elements[pos++]; > } > public void remove() { > throw new UnsupportedOperationException(**"Not > supported yet."); > } > }; > } > } > > static final Object[] OBJECTS = { new Object(), new Object(), new > Object() }; > static final TestCollection CANDIDATE = new TestCollection(** > OBJECTS); > static final int CAP = OBJECTS.length; // capacity of the CANDIDATE > static final int LAST = CAP - 1; // last possible array index > Object[] a; > Object[] res; > > int last() { return a.length - 1; } > > protected void test() throws Throwable { > // Check array type conversion > res = new TestCollection<>(new Object[]{"1", "2"}).toArray(new > String[0]); > check(res instanceof String[]); > check(res.length == 2); > check(res[1] == "2"); > > // Check incompatible type of target array > try { > res = CANDIDATE.toArray(new String[CAP]); > check(false); > } catch (Throwable t) { > check(t instanceof ArrayStoreException); > } > > // Check more elements than a.length > a = new Object[CAP-1]; // appears too small > res = CANDIDATE.toArray(a); > check(res != a); > check(res[LAST] != null); > > // Check equal elements as a.length > a = new Object[CAP]; // appears to match > res = CANDIDATE.toArray(a); > check(res == a); > check(res[last()] != null); > > // Check equal elements as a.length > a = new Object[CAP+1]; // appears too big > res = CANDIDATE.toArray(a); > check(res == a); > check(res[last()] == null); > > // Check less elements than expected, but more than a.length > a = new Object[CAP-2]; // appears too small > CANDIDATE.setSizeSequence(CAP, CAP-1); > res = CANDIDATE.toArray(a); > check(res != a); > check(res.length == CAP-1); > check(res[LAST-1] != null); > > // Check less elements than expected, but equal as a.length > a = Arrays.copyOf(OBJECTS, CAP); // appears to match > CANDIDATE.setSizeSequence(CAP, CAP-1); > res = CANDIDATE.toArray(a); > check(res == a); > check(res[last()] == null); > > // Check more elements than expected and more than a.length > a = new Object[CAP-1]; // appears to match > CANDIDATE.setSizeSequence(CAP-**1, CAP); > res = CANDIDATE.toArray(a); > check(res != a); > check(res[LAST] != null); > > // Check more elements than expected, but equal as a.length > a = new Object[CAP-1]; // appears to match > CANDIDATE.setSizeSequence(CAP-**2, CAP-1); > res = CANDIDATE.toArray(a); > check(res == a); > check(res[last()] != null); > > // Check more elements than expected, but less than a.length > a = Arrays.copyOf(OBJECTS, CAP); // appears to match > CANDIDATE.setSizeSequence(CAP-**2, CAP-1); > res = CANDIDATE.toArray(a); > check(res == a); > check(res[last()] == null); > > test_7121314(); > } > > /* > * Major target of this testcase, bug 7121314. > */ > protected void test_7121314() throws Throwable { > // Check equal elements as a.length, but less than expected > a = new Object[CAP-1]; // appears too small > CANDIDATE.setSizeSequence(CAP, CAP-1); > res = CANDIDATE.toArray(a); > check(res == a); > check(res[last()] != null); > > // Check less elements than a.length and less than expected > a = Arrays.copyOf(OBJECTS, CAP-1); // appears too small > CANDIDATE.setSizeSequence(CAP, CAP-2); > res = CANDIDATE.toArray(a); > check(res == a); > check(res[last()] == null); > > } > > > public static void main(String[] args) throws Throwable { > ToArrayTest testcase = new ToArrayTest(); > try { testcase.test(); } catch (Throwable t) { unexpected(t); } > > System.out.printf("%nPassed = %d, failed = %d%n%n", passed, failed); > if (failed > 0) throw new Exception("Some tests failed"); > } > > private static volatile int passed = 0, failed = 0; > private static void pass() { passed++; } > private static void fail() { failed++; Thread.dumpStack(); } > private static void fail(String msg) { System.out.println(msg); fail(); } > private static void unexpected(Throwable t) { failed++; > t.printStackTrace(); } > > static void check(boolean cond) { if (cond) pass(); else fail(); } > static void equals(Object x, Object y) { > > if (x == null ? y == null : x.equals(y)) pass(); > else {System.out.println(x + " not equal to " + y); fail(); }} > > } > > > -- Best Regards, Sean Chou From Ulf.Zibis at gmx.de Sun Apr 1 12:40:20 2012 From: Ulf.Zibis at gmx.de (Ulf Zibis) Date: Sun, 01 Apr 2012 14:40:20 +0200 Subject: Request for review : 7121314 : Behavior mismatch between AbstractCollection.toArray(T[] ) and its spec In-Reply-To: References: <4F59FB70.8070300@gmx.de> <4F5FD9E2.3060805@gmx.de> <4F61C3F5.2030607@gmx.de> <4F6A2682.7070808@gmx.de> <4F6BA03C.5010906@gmx.de> <4F6CE686.9060206@gmx.de> <4F729B0F.30803@gmx.de> <4F72A1B5.4090209@oracle.com> <4F735D1B.3010007@gmx.de> <4F73AE95.8070900@oracle.com> <4F7791A9.2000200@gmx.de> Message-ID: <4F784CB4.7020502@gmx.de> Thanks Sean, Am 01.04.2012 05:08, schrieb Sean Chou: > Hi Ulf, > > This is a regression testcase, Hm, I would say, this is a normal bug test, as the behaviour was never correct before. > there is no performance issue or future refactoring. So you additionally could remove fail(String msg), equal(Object x, Object y) and the 'protected' modifiers. -Ulf From david.holmes at oracle.com Sun Apr 1 13:14:11 2012 From: david.holmes at oracle.com (David Holmes) Date: Sun, 01 Apr 2012 23:14:11 +1000 Subject: Request for review : 7121314 : Behavior mismatch between AbstractCollection.toArray(T[] ) and its spec In-Reply-To: References: <4F5FD9E2.3060805@gmx.de> <4F61C3F5.2030607@gmx.de> <4F6A2682.7070808@gmx.de> <4F6BA03C.5010906@gmx.de> <4F6CE686.9060206@gmx.de> <4F729B0F.30803@gmx.de> <4F72A1B5.4090209@oracle.com> <4F735D1B.3010007@gmx.de> <4F73AE95.8070900@oracle.com> <4F7791A9.2000200@gmx.de> <4F77CAC7.2040709@oracle.com> Message-ID: <4F7854A3.4090406@oracle.com> Thanks Sean. I'd say this is done. David On 1/04/2012 7:24 PM, Sean Chou wrote: > Hi David, > > I made the new webrev with your modified testcase: > http://cr.openjdk.java.net/~zhouyx/7121314/webrev.04/ . > > > The link to the bug: > http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=7121314 > The link to the start of the thread: > http://mail.openjdk.java.net/pipermail/core-libs-dev/2012-March/009512.html > > > On Sun, Apr 1, 2012 at 11:25 AM, David Holmes > wrote: > > Simplified testcase below. > > Let's finalise this please. > > Thanks, > David > > > On 1/04/2012 1:08 PM, Sean Chou wrote: > > Hi Ulf, > > This is a regression testcase, there is no performance issue or > future refactoring. > Please wait for David's comments. > > On Sun, Apr 1, 2012 at 7:22 AM, Ulf Zibis > >> wrote: > > Hi Sean, > > thanks for your effort. > > Am 31.03.2012 11:43, schrieb Sean Chou: > > Hi David and Ulf, > > The new webrev is at: > http://cr.openjdk.java.net/~____zhouyx/7121314/webrev.03/ > > > > > > >> . > > > About the fix, I remained the previous one. > About the testcase, I merged the 3 files into one. > During merging, there are 2 modifications: > 1. I added static modifier to the 3 classes, which are > enclosed > by class ToArrayTest; > > You do not need the indirection via main()...run()...test() > if you > have all in 1 file. This was only necessary to feature a general > usability of InfraStructure. You can go back to David's 1 + > 1 nested > class approach replacing TConcurrentHashMapX by > TestCollection and > maybe rename realMain() to test(). > Additionally, loading 4 classes for 1 test would have some > performance impact on the test run, which could be avoided. > > > 2. I removed field TestCollection.fixedSize, which is > never read > after Ulf fixed the bug in testcase. > > This field would serve to "reset" the TestCollection to fixed > default size without the need of new instantiation for later > refactoring or testcase addition. > > As just discussed before, the doc for setSizeSequence() could be > little more specific: > 71 /* > 72 * Sets the values that size() will return on > each use. > The first > 73 * call to size will return sizes[0], then sizes[1] > etc. This > 74 * allows us to emulate a concurrent change to the > contents of > 75 * the collection without having to perform > concurrent > changes. > 76 * If sizes[n+1] contains a larger value than > on last > n-th invocation, > 77 * the collection will appear to have shrunk when > iterated; if a > 78 * smaller value then the collection will appear to > have grown. > 79 * When the last element of sizes is reached, the > collection will > 80 * appear size-fixed. > 81 */ > > > The link to the bug: > http://bugs.sun.com/____bugdatabase/view_bug.do?bug_____id=7121314 > > > > > The link to the start of the thread: > http://mail.openjdk.java.net/____pipermail/core-libs-dev/2012-____March/009512.html > > > > > > Good idea, to repeat these links. > > -Ulf > > > > > -- > Best Regards, > Sean Chou > > > > /* > * Copyright (c) 2012, Oracle and/or its affiliates. All rights > reserved. > * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. > * > * This code is free software; you can redistribute it and/or modify it > * under the terms of the GNU General Public License version 2 only, as > * published by the Free Software Foundation. > * > * This code is distributed in the hope that it will be useful, but > WITHOUT > * ANY WARRANTY; without even the implied warranty of > MERCHANTABILITY or > * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public > License > * version 2 for more details (a copy is included in the LICENSE > file that > * accompanied this code). > * > * You should have received a copy of the GNU General Public > License version > * 2 along with this work; if not, write to the Free Software > Foundation, > * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. > * > * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA > 94065 USA > * or visit www.oracle.com if you need > additional information or have any > * questions. > */ > > /* > * @test > * @bug 7121314 > * @summary AbstractCollection.toArray(T[]__) doesn't return the > given array > * in concurrent modification. > * @author Ulf Zibis, David Holmes > */ > > import java.util.AbstractCollection; > import java.util.Arrays; > import java.util.Iterator; > > public class ToArrayTest { > > static class TestCollection extends AbstractCollection { > > private final E[] elements; > > > private int[] sizes; > private int nextSize; > > public TestCollection(E[] elements) { > this.elements = elements; > setSizeSequence(new int[]{elements.length}); > } > > /* > * Sets the values that size() will return on each use. The next > > * call to size will return sizes[0], then sizes[1] etc. This > * allows us to emulate a concurrent change to the contents of > * the collection without having to perform concurrent changes. > * If sizes[n+1] contains a larger value, the collection > will appear to > * have shrunk when iterated; if a smaller value then the > * collection will appear to have grown when iterated > > */ > void setSizeSequence(int... sizes) { > this.sizes = sizes; > nextSize = 0; > } > > /* can change collection's size after each invocation */ > > @Override > public int size() { > return sizes[nextSize == sizes.length-1 ? nextSize : > nextSize++]; > } > > @Override > public Iterator iterator() { > return new Iterator() { > > int pos = 0; > public boolean hasNext() { > return pos < sizes[nextSize]; > } > public E next() { > return elements[pos++]; > } > public void remove() { > throw new UnsupportedOperationException(__"Not > supported yet."); > } > }; > } > } > > static final Object[] OBJECTS = { new Object(), new Object(), new > Object() }; > static final TestCollection CANDIDATE = new > TestCollection(__OBJECTS); > static final int CAP = OBJECTS.length; // capacity of the CANDIDATE > static final int LAST = CAP - 1; // last possible array index > Object[] a; > Object[] res; > > int last() { return a.length - 1; } > > protected void test() throws Throwable { > // Check array type conversion > res = new TestCollection<>(new Object[]{"1", "2"}).toArray(new > String[0]); > check(res instanceof String[]); > check(res.length == 2); > check(res[1] == "2"); > > // Check incompatible type of target array > try { > res = CANDIDATE.toArray(new String[CAP]); > check(false); > } catch (Throwable t) { > check(t instanceof ArrayStoreException); > } > > // Check more elements than a.length > a = new Object[CAP-1]; // appears too small > res = CANDIDATE.toArray(a); > check(res != a); > check(res[LAST] != null); > > // Check equal elements as a.length > a = new Object[CAP]; // appears to match > res = CANDIDATE.toArray(a); > check(res == a); > check(res[last()] != null); > > // Check equal elements as a.length > a = new Object[CAP+1]; // appears too big > res = CANDIDATE.toArray(a); > check(res == a); > check(res[last()] == null); > > // Check less elements than expected, but more than a.length > a = new Object[CAP-2]; // appears too small > CANDIDATE.setSizeSequence(CAP, CAP-1); > res = CANDIDATE.toArray(a); > check(res != a); > check(res.length == CAP-1); > check(res[LAST-1] != null); > > // Check less elements than expected, but equal as a.length > a = Arrays.copyOf(OBJECTS, CAP); // appears to match > CANDIDATE.setSizeSequence(CAP, CAP-1); > res = CANDIDATE.toArray(a); > check(res == a); > check(res[last()] == null); > > // Check more elements than expected and more than a.length > a = new Object[CAP-1]; // appears to match > CANDIDATE.setSizeSequence(CAP-__1, CAP); > res = CANDIDATE.toArray(a); > check(res != a); > check(res[LAST] != null); > > // Check more elements than expected, but equal as a.length > a = new Object[CAP-1]; // appears to match > CANDIDATE.setSizeSequence(CAP-__2, CAP-1); > res = CANDIDATE.toArray(a); > check(res == a); > check(res[last()] != null); > > // Check more elements than expected, but less than a.length > a = Arrays.copyOf(OBJECTS, CAP); // appears to match > CANDIDATE.setSizeSequence(CAP-__2, CAP-1); > res = CANDIDATE.toArray(a); > check(res == a); > check(res[last()] == null); > > test_7121314(); > } > > /* > * Major target of this testcase, bug 7121314. > */ > protected void test_7121314() throws Throwable { > // Check equal elements as a.length, but less than expected > a = new Object[CAP-1]; // appears too small > CANDIDATE.setSizeSequence(CAP, CAP-1); > res = CANDIDATE.toArray(a); > check(res == a); > check(res[last()] != null); > > // Check less elements than a.length and less than expected > a = Arrays.copyOf(OBJECTS, CAP-1); // appears too small > CANDIDATE.setSizeSequence(CAP, CAP-2); > res = CANDIDATE.toArray(a); > check(res == a); > check(res[last()] == null); > > } > > > public static void main(String[] args) throws Throwable { > ToArrayTest testcase = new ToArrayTest(); > try { testcase.test(); } catch (Throwable t) { unexpected(t); } > > System.out.printf("%nPassed = %d, failed = %d%n%n", passed, failed); > if (failed > 0) throw new Exception("Some tests failed"); > } > > private static volatile int passed = 0, failed = 0; > private static void pass() { passed++; } > private static void fail() { failed++; Thread.dumpStack(); } > private static void fail(String msg) { System.out.println(msg); > fail(); } > private static void unexpected(Throwable t) { failed++; > t.printStackTrace(); } > > static void check(boolean cond) { if (cond) pass(); else fail(); } > static void equals(Object x, Object y) { > > if (x == null ? y == null : x.equals(y)) pass(); > else {System.out.println(x + " not equal to " + y); fail(); }} > > } > > > > > > -- > Best Regards, > Sean Chou > From Alan.Bateman at oracle.com Sun Apr 1 13:16:14 2012 From: Alan.Bateman at oracle.com (Alan Bateman) Date: Sun, 01 Apr 2012 14:16:14 +0100 Subject: RFR: 7134701 [macosx] Support legacy native library names In-Reply-To: <4F72DF79.5080907@oracle.com> References: <4F71C91E.8080604@oracle.com> <4F71D6A6.5050507@oracle.com> <4F720AEB.7080106@oracle.com> <12715007-AA8C-4C31-81E5-F7716C829E87@oracle.com> <4F72C08A.7000106@oracle.com> <4F72DF79.5080907@oracle.com> Message-ID: <4F78551E.2050701@oracle.com> On 28/03/2012 10:52, Michael McMahon wrote: > > Maybe, we should be doing what Dan Daugherty suggested yesterday and > re-mapping the native > filename in the case where a full absolute path is passed in (which is > the code-path > when System.load() is called above) > > My reasoning (for rejecting that) was that an absolute path is a > request for an explicit name > eg. System.load("/abs/path/libfoo.dylib") and it seems odd to go > modifying the path that > the user provided (as opposed to the System.loadLibrary("foo") case, > where we have to > construct the path internally). But, I hadn't considered the case > above where the path > is constructed by calling System.mapLibraryName(). > > So, I think a better approach might be to just to check for the old > ".jnilib" suffix in all > the cases, rather than changing System.mapLibraryName(). Otherwise, > we'll have an inconsistency > forever more between the output of that method and the library suffix > that we want people > to use. > > I've attached the jdk8 diffs for doing this. > > - Michael I checked Apple's JDK6 and it looks to me that they always favor .jnilib over .dylib. If I compile some native code to two shared libraries, one with the .dylib suffix and the other with .jnilib then with Apple's JDK6 it always seems to load the .jnilib version. If only the .dylib library exists then it loads that. Also, as per a previous post, the System.mapLibraryName method with Apple's JDK6 seems to favor .jnilib too. This makes wonder about the original patches in the bsd-port and macosx forest as the comments there suggest that ".jnilib" is legacy when it seems to have been the favored suffix in JDK6 at least. Anyway, for jdk7 & jdk8 it looks like we are making a break from the past and supporting .jnilib is just to give developers a chance to migrate. In that context Dan's suggestion and your latest patch seems reasonable but does lead a few anomalies - for example System.loadLibrary with an absolute path might succeed even though the library will appear to not exist if tested separately. Also I wonder about System.mapLibraryName where someone tests to see if the library exists before then invoke System.loadLibrary. My guess is that there isn't a perfect solution to this as there will always been anomalies in a migration like this. On the latest webrev then the use of final at L1867 is a bit odd and can be removed. For the jdk8 version then the fromClass needs to be Class. -Alan From david.holmes at oracle.com Sun Apr 1 13:28:24 2012 From: david.holmes at oracle.com (David Holmes) Date: Sun, 01 Apr 2012 23:28:24 +1000 Subject: RFR: 7134701 [macosx] Support legacy native library names In-Reply-To: <4F78551E.2050701@oracle.com> References: <4F71C91E.8080604@oracle.com> <4F71D6A6.5050507@oracle.com> <4F720AEB.7080106@oracle.com> <12715007-AA8C-4C31-81E5-F7716C829E87@oracle.com> <4F72C08A.7000106@oracle.com> <4F72DF79.5080907@oracle.com> <4F78551E.2050701@oracle.com> Message-ID: <4F7857F8.2010308@oracle.com> Alan, Michael, This sounds like a case where a property to control what the preferred library suffix is might be useful as a migration aid. Though the fundamental flaw in the API is assuming there is only a single suffix. David On 1/04/2012 11:16 PM, Alan Bateman wrote: > On 28/03/2012 10:52, Michael McMahon wrote: >> >> Maybe, we should be doing what Dan Daugherty suggested yesterday and >> re-mapping the native >> filename in the case where a full absolute path is passed in (which is >> the code-path >> when System.load() is called above) >> >> My reasoning (for rejecting that) was that an absolute path is a >> request for an explicit name >> eg. System.load("/abs/path/libfoo.dylib") and it seems odd to go >> modifying the path that >> the user provided (as opposed to the System.loadLibrary("foo") case, >> where we have to >> construct the path internally). But, I hadn't considered the case >> above where the path >> is constructed by calling System.mapLibraryName(). >> >> So, I think a better approach might be to just to check for the old >> ".jnilib" suffix in all >> the cases, rather than changing System.mapLibraryName(). Otherwise, >> we'll have an inconsistency >> forever more between the output of that method and the library suffix >> that we want people >> to use. >> >> I've attached the jdk8 diffs for doing this. >> >> - Michael > I checked Apple's JDK6 and it looks to me that they always favor .jnilib > over .dylib. If I compile some native code to two shared libraries, one > with the .dylib suffix and the other with .jnilib then with Apple's JDK6 > it always seems to load the .jnilib version. If only the .dylib library > exists then it loads that. Also, as per a previous post, the > System.mapLibraryName method with Apple's JDK6 seems to favor .jnilib > too. This makes wonder about the original patches in the bsd-port and > macosx forest as the comments there suggest that ".jnilib" is legacy > when it seems to have been the favored suffix in JDK6 at least. > > Anyway, for jdk7 & jdk8 it looks like we are making a break from the > past and supporting .jnilib is just to give developers a chance to > migrate. In that context Dan's suggestion and your latest patch seems > reasonable but does lead a few anomalies - for example > System.loadLibrary with an absolute path might succeed even though the > library will appear to not exist if tested separately. Also I wonder > about System.mapLibraryName where someone tests to see if the library > exists before then invoke System.loadLibrary. My guess is that there > isn't a perfect solution to this as there will always been anomalies in > a migration like this. > > On the latest webrev then the use of final at L1867 is a bit odd and can > be removed. For the jdk8 version then the fromClass needs to be Class. > > -Alan > > > > > From Ulf.Zibis at gmx.de Sun Apr 1 17:01:48 2012 From: Ulf.Zibis at gmx.de (Ulf Zibis) Date: Sun, 01 Apr 2012 19:01:48 +0200 Subject: Request for review : 7121314 : Behavior mismatch between AbstractCollection.toArray(T[] ) and its spec In-Reply-To: <4F77CAC7.2040709@oracle.com> References: <4F59FB70.8070300@gmx.de> <4F5FD9E2.3060805@gmx.de> <4F61C3F5.2030607@gmx.de> <4F6A2682.7070808@gmx.de> <4F6BA03C.5010906@gmx.de> <4F6CE686.9060206@gmx.de> <4F729B0F.30803@gmx.de> <4F72A1B5.4090209@oracle.com> <4F735D1B.3010007@gmx.de> <4F73AE95.8070900@oracle.com> <4F7791A9.2000200@gmx.de> <4F77CAC7.2040709@oracle.com> Message-ID: <4F7889FC.1060909@gmx.de> Hi David, Sean, tonight, I started to refactor the test for JUnit infrastructure. Ok, it is too late. I attach it anyway for your interest, maybe next time in JUnit or testNG (which I'm not familiar)... Thanks for the involved discussion, -Ulf Am 01.04.2012 05:25, schrieb David Holmes: > Simplified testcase below. > > Let's finalise this please. > > Thanks, > David > > On 1/04/2012 1:08 PM, Sean Chou wrote: >> Hi Ulf, >> >> This is a regression testcase, there is no performance issue or >> future refactoring. >> Please wait for David's comments. >> >> On Sun, Apr 1, 2012 at 7:22 AM, Ulf Zibis > > wrote: >> >> Hi Sean, >> >> thanks for your effort. >> >> Am 31.03.2012 11:43, schrieb Sean Chou: >> >> Hi David and Ulf, >> >> The new webrev is at: >> http://cr.openjdk.java.net/~__zhouyx/7121314/webrev.03/ >> >> > > . >> >> >> About the fix, I remained the previous one. >> About the testcase, I merged the 3 files into one. >> During merging, there are 2 modifications: >> 1. I added static modifier to the 3 classes, which are enclosed >> by class ToArrayTest; >> >> You do not need the indirection via main()...run()...test() if you >> have all in 1 file. This was only necessary to feature a general >> usability of InfraStructure. You can go back to David's 1 + 1 nested >> class approach replacing TConcurrentHashMapX by TestCollection and >> maybe rename realMain() to test(). >> Additionally, loading 4 classes for 1 test would have some >> performance impact on the test run, which could be avoided. >> >> >> 2. I removed field TestCollection.fixedSize, which is never read >> after Ulf fixed the bug in testcase. >> >> This field would serve to "reset" the TestCollection to fixed >> default size without the need of new instantiation for later >> refactoring or testcase addition. >> >> As just discussed before, the doc for setSizeSequence() could be >> little more specific: >> 71 /* >> 72 * Sets the values that size() will return on each use. >> The first >> 73 * call to size will return sizes[0], then sizes[1] >> etc. This >> 74 * allows us to emulate a concurrent change to the >> contents of >> 75 * the collection without having to perform concurrent >> changes. >> 76 * If sizes[n+1] contains a larger value than on last >> n-th invocation, >> 77 * the collection will appear to have shrunk when >> iterated; if a >> 78 * smaller value then the collection will appear to >> have grown. >> 79 * When the last element of sizes is reached, the >> collection will >> 80 * appear size-fixed. >> 81 */ >> >> >> The link to the bug: >> http://bugs.sun.com/__bugdatabase/view_bug.do?bug___id=7121314 >> >> The link to the start of the thread: >> http://mail.openjdk.java.net/__pipermail/core-libs-dev/2012-__March/009512.html >> >> >> Good idea, to repeat these links. >> >> -Ulf >> >> >> >> >> -- >> Best Regards, >> Sean Chou >> > > > /* > * Copyright (c) 2012, Oracle and/or its affiliates. All rights reserved. > * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. > * > * This code is free software; you can redistribute it and/or modify it > * under the terms of the GNU General Public License version 2 only, as > * published by the Free Software Foundation. > * > * This code is distributed in the hope that it will be useful, but WITHOUT > * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or > * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License > * version 2 for more details (a copy is included in the LICENSE file that > * accompanied this code). > * > * You should have received a copy of the GNU General Public License version > * 2 along with this work; if not, write to the Free Software Foundation, > * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. > * > * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA > * or visit www.oracle.com if you need additional information or have any > * questions. > */ > > /* > * @test > * @bug 7121314 > * @summary AbstractCollection.toArray(T[]) doesn't return the given array > * in concurrent modification. > * @author Ulf Zibis, David Holmes > */ > > import java.util.AbstractCollection; > import java.util.Arrays; > import java.util.Iterator; > > public class ToArrayTest { > > static class TestCollection extends AbstractCollection { > > private final E[] elements; > > private int[] sizes; > private int nextSize; > > public TestCollection(E[] elements) { > this.elements = elements; > setSizeSequence(new int[]{elements.length}); > } > > /* > * Sets the values that size() will return on each use. The next > * call to size will return sizes[0], then sizes[1] etc. This > * allows us to emulate a concurrent change to the contents of > * the collection without having to perform concurrent changes. > * If sizes[n+1] contains a larger value, the collection will appear to > * have shrunk when iterated; if a smaller value then the > * collection will appear to have grown when iterated > */ > void setSizeSequence(int... sizes) { > this.sizes = sizes; > nextSize = 0; > } > > /* can change collection's size after each invocation */ > @Override > public int size() { > return sizes[nextSize == sizes.length-1 ? nextSize : nextSize++]; > } > > @Override > public Iterator iterator() { > return new Iterator() { > int pos = 0; > public boolean hasNext() { > return pos < sizes[nextSize]; > } > public E next() { > return elements[pos++]; > } > public void remove() { > throw new UnsupportedOperationException("Not supported yet."); > } > }; > } > } > > static final Object[] OBJECTS = { new Object(), new Object(), new Object() }; > static final TestCollection CANDIDATE = new TestCollection(OBJECTS); > static final int CAP = OBJECTS.length; // capacity of the CANDIDATE > static final int LAST = CAP - 1; // last possible array index > Object[] a; > Object[] res; > > int last() { return a.length - 1; } > > protected void test() throws Throwable { > // Check array type conversion > res = new TestCollection<>(new Object[]{"1", "2"}).toArray(new String[0]); > check(res instanceof String[]); > check(res.length == 2); > check(res[1] == "2"); > > // Check incompatible type of target array > try { > res = CANDIDATE.toArray(new String[CAP]); > check(false); > } catch (Throwable t) { > check(t instanceof ArrayStoreException); > } > > // Check more elements than a.length > a = new Object[CAP-1]; // appears too small > res = CANDIDATE.toArray(a); > check(res != a); > check(res[LAST] != null); > > // Check equal elements as a.length > a = new Object[CAP]; // appears to match > res = CANDIDATE.toArray(a); > check(res == a); > check(res[last()] != null); > > // Check equal elements as a.length > a = new Object[CAP+1]; // appears too big > res = CANDIDATE.toArray(a); > check(res == a); > check(res[last()] == null); > > // Check less elements than expected, but more than a.length > a = new Object[CAP-2]; // appears too small > CANDIDATE.setSizeSequence(CAP, CAP-1); > res = CANDIDATE.toArray(a); > check(res != a); > check(res.length == CAP-1); > check(res[LAST-1] != null); > > // Check less elements than expected, but equal as a.length > a = Arrays.copyOf(OBJECTS, CAP); // appears to match > CANDIDATE.setSizeSequence(CAP, CAP-1); > res = CANDIDATE.toArray(a); > check(res == a); > check(res[last()] == null); > > // Check more elements than expected and more than a.length > a = new Object[CAP-1]; // appears to match > CANDIDATE.setSizeSequence(CAP-1, CAP); > res = CANDIDATE.toArray(a); > check(res != a); > check(res[LAST] != null); > > // Check more elements than expected, but equal as a.length > a = new Object[CAP-1]; // appears to match > CANDIDATE.setSizeSequence(CAP-2, CAP-1); > res = CANDIDATE.toArray(a); > check(res == a); > check(res[last()] != null); > > // Check more elements than expected, but less than a.length > a = Arrays.copyOf(OBJECTS, CAP); // appears to match > CANDIDATE.setSizeSequence(CAP-2, CAP-1); > res = CANDIDATE.toArray(a); > check(res == a); > check(res[last()] == null); > > test_7121314(); > } > > /* > * Major target of this testcase, bug 7121314. > */ > protected void test_7121314() throws Throwable { > // Check equal elements as a.length, but less than expected > a = new Object[CAP-1]; // appears too small > CANDIDATE.setSizeSequence(CAP, CAP-1); > res = CANDIDATE.toArray(a); > check(res == a); > check(res[last()] != null); > > // Check less elements than a.length and less than expected > a = Arrays.copyOf(OBJECTS, CAP-1); // appears too small > CANDIDATE.setSizeSequence(CAP, CAP-2); > res = CANDIDATE.toArray(a); > check(res == a); > check(res[last()] == null); > } > > > public static void main(String[] args) throws Throwable { > ToArrayTest testcase = new ToArrayTest(); > try { testcase.test(); } catch (Throwable t) { unexpected(t); } > System.out.printf("%nPassed = %d, failed = %d%n%n", passed, failed); > if (failed > 0) throw new Exception("Some tests failed"); > } > > private static volatile int passed = 0, failed = 0; > private static void pass() { passed++; } > private static void fail() { failed++; Thread.dumpStack(); } > private static void fail(String msg) { System.out.println(msg); fail(); } > private static void unexpected(Throwable t) { failed++; t.printStackTrace(); } > static void check(boolean cond) { if (cond) pass(); else fail(); } > static void equals(Object x, Object y) { > if (x == null ? y == null : x.equals(y)) pass(); > else {System.out.println(x + " not equal to " + y); fail(); }} > > } > > > -------------- next part -------------- package java.util; import org.junit.Before; import org.junit.Ignore; import org.junit.Test; import static org.hamcrest.CoreMatchers.instanceOf; import static org.junit.Assert.*; /* * Check AbstractCollection, especially if the collection concurrently changes size * @test * @bug 7121314 * @summary return the original array if the collection concurrently shrinks and will fit * @run junit/samevm * @author Ulf Zibis, David Holmes */ public class AbstractCollectionTest { private static final Object[] OBJECTS = { new Object(), new Object(), new Object() }; private static final AbstractCollectionImpl CANDIDATE = new AbstractCollectionImpl(OBJECTS); private static final int CAP = OBJECTS.length; // capacity of the CANDIDATE private static final int LAST = CAP - 1; // last possible array index private Object[] a; private Object[] result; private int last() { return a.length - 1; } // last possible input array index @Before public void setUp() { CANDIDATE.setSizeSequence(null); } @Test @Ignore public void testIterator() {} @Test @Ignore public void testSize() {} @Test @Ignore public void testIsEmpty() {} @Test @Ignore public void testContains() {} @Test @Ignore public void testToArray_0args() {} /** * Test of toArray method, of class AbstractCollection. */ @Test public void testToArray_GenericType() { System.out.println("toArray(T[] a)"); /// Standard targets /// // Check array type conversion result = new AbstractCollectionImpl(new Object[]{"1", "2"}).toArray(new String[0]); assertThat(result, instanceOf(String[].class)); assertEquals(result.length, 2); assertEquals(result[1], "2"); // Check incompatible type of target array try { result = CANDIDATE.toArray(new String[CAP]); fail(); } catch (Throwable t) { assertThat(t, instanceOf(ArrayStoreException.class)); } // Check null input try { result = CANDIDATE.toArray(null); fail(); } catch (Throwable t) { assertThat(t, instanceOf(NullPointerException.class)); } // Check more elements than a.length a = new Object[CAP-1]; // appears too small result = CANDIDATE.toArray(a); assertNotSame(result, a); assertNotNull(result[LAST]); // Check equal elements as a.length a = new Object[CAP]; // appears to match result = CANDIDATE.toArray(a); assertSame(result, a); assertNotNull(result[last()]); // Check less elements than a.length a = new Object[CAP+1]; // appears too big result = CANDIDATE.toArray(a); assertSame(result, a); assertNull(result[last()]); // Check less elements than expected, but more than a.length a = new Object[CAP-2]; // appears too small CANDIDATE.setSizeSequence(CAP, CAP-1); result = CANDIDATE.toArray(a); assertNotSame(result, a); assertEquals(result.length, CAP-1); assertNotNull(result[LAST-1]); // Check less elements than expected, but equal as a.length a = Arrays.copyOf(OBJECTS, CAP); // appears to match CANDIDATE.setSizeSequence(CAP, CAP-1); result = CANDIDATE.toArray(a); assertSame(result, a); assertNull(result[last()]); // Check more elements than expected and more than a.length a = new Object[CAP-1]; // appears to match CANDIDATE.setSizeSequence(CAP-1, CAP); result = CANDIDATE.toArray(a); assertNotSame(result, a); assertNotNull(result[LAST]); // Check more elements than expected, but equal as a.length a = new Object[CAP-1]; // appears to match CANDIDATE.setSizeSequence(CAP-2, CAP-1); result = CANDIDATE.toArray(a); assertSame(result, a); assertNotNull(result[last()]); // Check more elements than expected, but less than a.length a = Arrays.copyOf(OBJECTS, CAP); // appears to match CANDIDATE.setSizeSequence(CAP-2, CAP-1); result = CANDIDATE.toArray(a); assertSame(result, a); assertNull(result[last()]); /// Major targets of this testcase, bug 7121314 /// // Check equal elements as a.length, but less than expected a = new Object[CAP-1]; // appears too small CANDIDATE.setSizeSequence(CAP, CAP-1); result = CANDIDATE.toArray(a); assertSame(result, a); assertNotNull(result[last()]); // Check less elements than a.length and less than expected a = Arrays.copyOf(OBJECTS, CAP-1); // appears too small CANDIDATE.setSizeSequence(CAP, CAP-2); result = CANDIDATE.toArray(a); assertSame(result, a); assertNull(result[last()]); } @Test @Ignore public void testAdd() {} @Test @Ignore public void testRemove() {} @Test @Ignore public void testContainsAll() {} @Test @Ignore public void testAddAll() {} @Test @Ignore public void testRemoveAll() {} @Test @Ignore public void testRetainAll() {} @Test @Ignore public void testClear() {} @Test @Ignore public void testToString() {} private static class AbstractCollectionImpl extends AbstractCollection { private final E[] elements; private final int[] fixedSize; private int[] sizes; private int nextSize; private AbstractCollectionImpl(E[] elements) { this.elements = elements; setSizeSequence(fixedSize = new int[]{elements.length}); } /** * Sets the values that size() will return on each use. The first * call to size will return sizes[0], then sizes[1] etc. This * allows us to emulate a concurrent change to the contents of * the collection without having to perform concurrent changes. * If sizes[n+1] contains a larger value than on last n-th invocation, * the collection will appear to have shrunk when iterated; if a * smaller value then the collection will appear to have grown. * When the last element of sizes is reached, the collection will * appear size-fixed. */ private void setSizeSequence(int... sizes) { this.sizes = sizes != null ? sizes : fixedSize; nextSize = 0; } /** Returns collection's size; can potentially change after each invocation */ @Override public int size() { return sizes[nextSize == sizes.length-1 ? nextSize : nextSize++]; } @Override public Iterator iterator() { return new Iterator() { int pos = 0; public boolean hasNext() { return pos < sizes[nextSize]; } public E next() { return elements[pos++]; } public void remove() { throw new UnsupportedOperationException("Not supported yet."); } }; } } } From Ulf.Zibis at gmx.de Sun Apr 1 17:02:21 2012 From: Ulf.Zibis at gmx.de (Ulf Zibis) Date: Sun, 01 Apr 2012 19:02:21 +0200 Subject: Request for review : 7121314 : Behavior mismatch between AbstractCollection.toArray(T[] ) and its spec In-Reply-To: References: <4F5FD9E2.3060805@gmx.de> <4F61C3F5.2030607@gmx.de> <4F6A2682.7070808@gmx.de> <4F6BA03C.5010906@gmx.de> <4F6CE686.9060206@gmx.de> <4F729B0F.30803@gmx.de> <4F72A1B5.4090209@oracle.com> <4F735D1B.3010007@gmx.de> <4F73AE95.8070900@oracle.com> <4F7791A9.2000200@gmx.de> <4F77CAC7.2040709@oracle.com> Message-ID: <4F788A1D.4010002@gmx.de> Am 01.04.2012 11:24, schrieb Sean Chou: > Hi David, > > I made the new webrev with your modified testcase: > http://cr.openjdk.java.net/~zhouyx/7121314/webrev.04/ . Looks perfect. Little nits: There is no need to instantiate a ToArray object; test() could be static. Little better comments: /* Returns collection's size; potentially can change after each invocation. */ @Override public void size() { ... int last() { // last possible input array index .... 1 missing case for completeness: // Check null input try { res = CANDIDATE.toArray(null); check(false); } catch (Throwable t) { check(t instanceof NullPointerException); } -Ulf > The link to the bug: > http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=7121314 > The link to the start of the thread: > > http://mail.openjdk.java.net/pipermail/core-libs-dev/2012-March/009512.html From mark.reinhold at oracle.com Sun Apr 1 18:42:28 2012 From: mark.reinhold at oracle.com (mark.reinhold at oracle.com) Date: Sun, 1 Apr 2012 11:42:28 -0700 (PDT) Subject: JEP 154: Remove Serialization Message-ID: <20120401184228.D8D39F29@eggemoggin.niobe.net> Posted: http://openjdk.java.net/jeps/154 - Mark From alexlamsl at gmail.com Sun Apr 1 19:38:27 2012 From: alexlamsl at gmail.com (Alex Lam S.L.) Date: Sun, 1 Apr 2012 20:38:27 +0100 Subject: JEP 154: Remove Serialization In-Reply-To: <20120401184228.D8D39F29@eggemoggin.niobe.net> References: <20120401184228.D8D39F29@eggemoggin.niobe.net> Message-ID: April Fools!..... right? Impact ... Twitter: High Confused, Alex. On Sun, Apr 1, 2012 at 7:42 PM, wrote: > Posted: http://openjdk.java.net/jeps/154 > > - Mark From brucechapman at paradise.net.nz Mon Apr 2 10:17:09 2012 From: brucechapman at paradise.net.nz (Bruce Chapman) Date: Mon, 02 Apr 2012 22:17:09 +1200 Subject: JEP 154: Remove Serialization In-Reply-To: <20120401184228.D8D39F29@eggemoggin.niobe.net> References: <20120401184228.D8D39F29@eggemoggin.niobe.net> Message-ID: <4F797CA5.7070604@paradise.net.nz> Nice try, almost believable. Of course my guard was down because the 1st was yesterday down under here. On 2/04/2012 6:42 a.m., mark.reinhold at oracle.com wrote: > Posted: http://openjdk.java.net/jeps/154 > > - Mark > From david.holmes at oracle.com Mon Apr 2 11:28:41 2012 From: david.holmes at oracle.com (David Holmes) Date: Mon, 02 Apr 2012 21:28:41 +1000 Subject: RFR 6963841: java/util/concurrent/Phaser/Basic.java fails intermittently In-Reply-To: <4F75977B.4010206@oracle.com> References: <4F712E45.9010208@oracle.com> <4F719D5F.9020501@cs.oswego.edu> <4F75977B.4010206@oracle.com> Message-ID: <4F798D69.5010108@oracle.com> On 30/03/2012 9:22 PM, Chris Hegarty wrote: > Sorry guys, I think I found the actual cause for this failure. Though I > think the increased defensive timeouts are still a good idea. > > There is a race in the test itself. The "One thread interrupted" test > tries to interrupt a thread blocked in awaitAdvanceInterruptibly, but > how do we know the thread has actually made it to this point before we > interrupt? The usual situation with these kind of tests! I don't think we're meant to. The interrupt will remain pending and only cause the IE when it does reach awaitAdvanceInterruptibly. It is the thread doing the interrupting that needs to wait until the interrupt has been received - but I don't think it needs to re-interrupt as that implies the interrupt is being lost somewhere. David > The solution is to retry the interrupt if we know the target thread > hasn't thrown anything. > > http://cr.openjdk.java.net/~chegar/6963841/webrev.01/webrev/ > > -Chris. > > > On 27/03/2012 11:58, Doug Lea wrote: >> On 03/26/12 23:04, Chris Hegarty wrote: >>> David, Doug, >>> >>> This test has been failing intermittently on jdk7u-dev and jdk8 for a >>> while now. >>> It only appears to fail when run in our internal build/test system >>> (JPRT). >>> >>> I believe the cause of the failure to be simply that the machines the >>> test is >>> run on are too slow, or very busy, and the defensive timeout in the >>> test are not >>> large enough to handle this. The solution is to increase these timeout >>> (similar >>> to other tests in the concurrency area that we increased the timeouts >>> for too). >>> >> >> OK. I synced with our version. As always, it is too bad that there is no >> way to operationalize the notion of "for some timeout value appropriate >> for the platform, no TimeoutExceptions occur". >> >> -Doug From dl at cs.oswego.edu Mon Apr 2 12:15:01 2012 From: dl at cs.oswego.edu (Doug Lea) Date: Mon, 02 Apr 2012 08:15:01 -0400 Subject: RFR 6963841: java/util/concurrent/Phaser/Basic.java fails intermittently In-Reply-To: <4F798D69.5010108@oracle.com> References: <4F712E45.9010208@oracle.com> <4F719D5F.9020501@cs.oswego.edu> <4F75977B.4010206@oracle.com> <4F798D69.5010108@oracle.com> Message-ID: <4F799845.9060401@cs.oswego.edu> On 04/02/12 07:28, David Holmes wrote: > On 30/03/2012 9:22 PM, Chris Hegarty wrote: >> Sorry guys, I think I found the actual cause for this failure. Though I >> think the increased defensive timeouts are still a good idea. >> >> There is a race in the test itself. The "One thread interrupted" test >> tries to interrupt a thread blocked in awaitAdvanceInterruptibly, but >> how do we know the thread has actually made it to this point before we >> interrupt? The usual situation with these kind of tests! > > I don't think we're meant to. The interrupt will remain pending and only cause > the IE when it does reach awaitAdvanceInterruptibly. It is the thread doing the > interrupting that needs to wait until the interrupt has been received - but I > don't think it needs to re-interrupt as that implies the interrupt is being lost > somewhere. I think you are both right -- the main thread must delay but need not re-interrupt. -Doug > > David > >> The solution is to retry the interrupt if we know the target thread >> hasn't thrown anything. >> >> http://cr.openjdk.java.net/~chegar/6963841/webrev.01/webrev/ >> >> -Chris. >> >> >> On 27/03/2012 11:58, Doug Lea wrote: >>> On 03/26/12 23:04, Chris Hegarty wrote: >>>> David, Doug, >>>> >>>> This test has been failing intermittently on jdk7u-dev and jdk8 for a >>>> while now. >>>> It only appears to fail when run in our internal build/test system >>>> (JPRT). >>>> >>>> I believe the cause of the failure to be simply that the machines the >>>> test is >>>> run on are too slow, or very busy, and the defensive timeout in the >>>> test are not >>>> large enough to handle this. The solution is to increase these timeout >>>> (similar >>>> to other tests in the concurrency area that we increased the timeouts >>>> for too). >>>> >>> >>> OK. I synced with our version. As always, it is too bad that there is no >>> way to operationalize the notion of "for some timeout value appropriate >>> for the platform, no TimeoutExceptions occur". >>> >>> -Doug > From chris.hegarty at oracle.com Mon Apr 2 12:46:36 2012 From: chris.hegarty at oracle.com (Chris Hegarty) Date: Mon, 02 Apr 2012 13:46:36 +0100 Subject: RFR 6963841: java/util/concurrent/Phaser/Basic.java fails intermittently In-Reply-To: <4F799845.9060401@cs.oswego.edu> References: <4F712E45.9010208@oracle.com> <4F719D5F.9020501@cs.oswego.edu> <4F75977B.4010206@oracle.com> <4F798D69.5010108@oracle.com> <4F799845.9060401@cs.oswego.edu> Message-ID: <4F799FAC.2010404@oracle.com> On 02/04/2012 13:15, Doug Lea wrote: > On 04/02/12 07:28, David Holmes wrote: >> On 30/03/2012 9:22 PM, Chris Hegarty wrote: >>> Sorry guys, I think I found the actual cause for this failure. Though I >>> think the increased defensive timeouts are still a good idea. >>> >>> There is a race in the test itself. The "One thread interrupted" test >>> tries to interrupt a thread blocked in awaitAdvanceInterruptibly, but >>> how do we know the thread has actually made it to this point before we >>> interrupt? The usual situation with these kind of tests! >> >> I don't think we're meant to. The interrupt will remain pending and >> only cause >> the IE when it does reach awaitAdvanceInterruptibly. It is the thread >> doing the >> interrupting that needs to wait until the interrupt has been received >> - but I >> don't think it needs to re-interrupt as that implies the interrupt is >> being lost >> somewhere. > > I think you are both right -- the main thread must delay but need not > re-interrupt. Yes, re-interrupting is not ideal, but it looks like Phaser.awaitAdvanceInterruptibly differs from say CyclicBarrier.await. CyclicBarrier.await is spec'ed to throw IE is there is a pending interrupt when it is called. Is this the expected behavior of Phaser.awaitAdvanceInterruptibly too? I was assuming not, that is why I tried to have interrupt invoked after the thread blocked in awaitAdvanceInterruptibly. On the test side it may be sufficient to just delay/sleep the main thread for 2 seconds before call interrupt. I think this is what you are suggesting, right? -Chris. > > -Doug > > >> >> David >> >>> The solution is to retry the interrupt if we know the target thread >>> hasn't thrown anything. >>> >>> http://cr.openjdk.java.net/~chegar/6963841/webrev.01/webrev/ >>> >>> -Chris. >>> >>> >>> On 27/03/2012 11:58, Doug Lea wrote: >>>> On 03/26/12 23:04, Chris Hegarty wrote: >>>>> David, Doug, >>>>> >>>>> This test has been failing intermittently on jdk7u-dev and jdk8 for a >>>>> while now. >>>>> It only appears to fail when run in our internal build/test system >>>>> (JPRT). >>>>> >>>>> I believe the cause of the failure to be simply that the machines the >>>>> test is >>>>> run on are too slow, or very busy, and the defensive timeout in the >>>>> test are not >>>>> large enough to handle this. The solution is to increase these timeout >>>>> (similar >>>>> to other tests in the concurrency area that we increased the timeouts >>>>> for too). >>>>> >>>> >>>> OK. I synced with our version. As always, it is too bad that there >>>> is no >>>> way to operationalize the notion of "for some timeout value appropriate >>>> for the platform, no TimeoutExceptions occur". >>>> >>>> -Doug >> > From brian.goetz at oracle.com Mon Apr 2 17:47:32 2012 From: brian.goetz at oracle.com (Brian Goetz) Date: Mon, 02 Apr 2012 13:47:32 -0400 Subject: jtreg, junit, and testng (was Re: Request for review : 7121314 : Behavior mismatch between AbstractCollection.toArray(T[] ) and its spec) In-Reply-To: <4F761912.5040809@gmx.de> References: <4F59FB70.8070300@gmx.de> <4F5FD9E2.3060805@gmx.de> <4F61C3F5.2030607@gmx.de> <4F6A2682.7070808@gmx.de> <4F6BA03C.5010906@gmx.de> <4F6CE686.9060206@gmx.de> <4F729B0F.30803@gmx.de> <4F72A1B5.4090209@oracle.com> <4F735D1B.3010007@gmx.de> <4F73AE95.8070900@oracle.com> <4F73BBB1.7060303@gmx.de> <4F75EFA8.6030305@oracle.com> <4F761912.5040809@gmx.de> Message-ID: <4F79E634.3040603@oracle.com> Yes. We'll be migrating those to TestNG as part of the process. On 3/30/2012 4:35 PM, Ulf Zibis wrote: > Am 30.03.2012 19:38, schrieb Brian Goetz: >>> Similarly class Infrastructure could be reused over all JDK's tests. But >>> personnally I would prefer to more and more use the JUnit framework. Is >>> there already an existing example? >> >> There's good news on this front. We are in the process of making >> TestNG a supported test framework for writing unit and regression >> tests in OpenJDK. TestNG inherits a lot of ideas from JUnit, so JUnit >> users should find it easy to use, and there are plugins for all the >> big IDEs. >> >> The goal you state -- making it easier to reuse test infrastructure -- >> is one of the reasons why we want to do this. Another is that many >> people are already familiar / comfortable with this style of testing, >> and therefore are more likely to contribute good tests. >> >> I don't have a schedule for when this will be supported within the >> OpenJDK build and test process, but we're working on it. > > It seems, jtreg to JUnit bridge is already existing: > http://mail.openjdk.java.net/pipermail/hotspot-compiler-dev/2009-October/002003.html > > > I also have found an example: > http://cr.openjdk.java.net/~jrose/6891770/webrev.00/test/java/dyn/MethodHandlesTest.java.html > > > -Ulf > > From Ulf.Zibis at gmx.de Mon Apr 2 21:28:40 2012 From: Ulf.Zibis at gmx.de (Ulf Zibis) Date: Mon, 02 Apr 2012 23:28:40 +0200 Subject: jtreg, junit, and testng (was Re: Request for review : 7121314 : Behavior mismatch between AbstractCollection.toArray(T[] ) and its spec) In-Reply-To: <4F79E634.3040603@oracle.com> References: <4F59FB70.8070300@gmx.de> <4F5FD9E2.3060805@gmx.de> <4F61C3F5.2030607@gmx.de> <4F6A2682.7070808@gmx.de> <4F6BA03C.5010906@gmx.de> <4F6CE686.9060206@gmx.de> <4F729B0F.30803@gmx.de> <4F72A1B5.4090209@oracle.com> <4F735D1B.3010007@gmx.de> <4F73AE95.8070900@oracle.com> <4F73BBB1.7060303@gmx.de> <4F75EFA8.6030305@oracle.com> <4F761912.5040809@gmx.de> <4F79E634.3040603@oracle.com> Message-ID: <4F7A1A08.8050404@gmx.de> Thanks Brian. Is there any article, why you prefer testNG over JUnit? -Ulf Am 02.04.2012 19:47, schrieb Brian Goetz: > Yes. We'll be migrating those to TestNG as part of the process. > > On 3/30/2012 4:35 PM, Ulf Zibis wrote: >> Am 30.03.2012 19:38, schrieb Brian Goetz: >>>> Similarly class Infrastructure could be reused over all JDK's tests. But >>>> personnally I would prefer to more and more use the JUnit framework. Is >>>> there already an existing example? >>> >>> There's good news on this front. We are in the process of making >>> TestNG a supported test framework for writing unit and regression >>> tests in OpenJDK. TestNG inherits a lot of ideas from JUnit, so JUnit >>> users should find it easy to use, and there are plugins for all the >>> big IDEs. >>> >>> The goal you state -- making it easier to reuse test infrastructure -- >>> is one of the reasons why we want to do this. Another is that many >>> people are already familiar / comfortable with this style of testing, >>> and therefore are more likely to contribute good tests. >>> >>> I don't have a schedule for when this will be supported within the >>> OpenJDK build and test process, but we're working on it. >> >> It seems, jtreg to JUnit bridge is already existing: >> http://mail.openjdk.java.net/pipermail/hotspot-compiler-dev/2009-October/002003.html >> >> >> I also have found an example: >> http://cr.openjdk.java.net/~jrose/6891770/webrev.00/test/java/dyn/MethodHandlesTest.java.html >> >> >> -Ulf >> >> > From brian.goetz at oracle.com Mon Apr 2 22:29:30 2012 From: brian.goetz at oracle.com (Brian Goetz) Date: Mon, 02 Apr 2012 18:29:30 -0400 Subject: jtreg, junit, and testng (was Re: Request for review : 7121314 : Behavior mismatch between AbstractCollection.toArray(T[] ) and its spec) In-Reply-To: <4F7A1A08.8050404@gmx.de> References: <4F59FB70.8070300@gmx.de> <4F5FD9E2.3060805@gmx.de> <4F61C3F5.2030607@gmx.de> <4F6A2682.7070808@gmx.de> <4F6BA03C.5010906@gmx.de> <4F6CE686.9060206@gmx.de> <4F729B0F.30803@gmx.de> <4F72A1B5.4090209@oracle.com> <4F735D1B.3010007@gmx.de> <4F73AE95.8070900@oracle.com> <4F73BBB1.7060303@gmx.de> <4F75EFA8.6030305@oracle.com> <4F761912.5040809@gmx.de> <4F79E634.3040603@oracle.com> <4F7A1A08.8050404@gmx.de> Message-ID: <4F7A284A.1060901@oracle.com> The primary reason is: Oracle has internal processes that we must follow to use third-party software in our products (whether open-source or closed-source products, and whether or not the third-party software is ultimately distributed with the product or not.) An examination of the TestNG license compared to the JUnit license suggested that it was going to be significantly easier to obtain the required internal approvals for TestNG. Since TestNG is also pretty good (one could argue which is better, and there are pros and cons on both sides of this argument, but its clearly "good enough"), we chose the path of "let's get something done." On 4/2/2012 5:28 PM, Ulf Zibis wrote: > Thanks Brian. > > Is there any article, why you prefer testNG over JUnit? > > -Ulf > > > Am 02.04.2012 19:47, schrieb Brian Goetz: >> Yes. We'll be migrating those to TestNG as part of the process. >> >> On 3/30/2012 4:35 PM, Ulf Zibis wrote: >>> Am 30.03.2012 19:38, schrieb Brian Goetz: >>>>> Similarly class Infrastructure could be reused over all JDK's >>>>> tests. But >>>>> personnally I would prefer to more and more use the JUnit >>>>> framework. Is >>>>> there already an existing example? >>>> >>>> There's good news on this front. We are in the process of making >>>> TestNG a supported test framework for writing unit and regression >>>> tests in OpenJDK. TestNG inherits a lot of ideas from JUnit, so JUnit >>>> users should find it easy to use, and there are plugins for all the >>>> big IDEs. >>>> >>>> The goal you state -- making it easier to reuse test infrastructure -- >>>> is one of the reasons why we want to do this. Another is that many >>>> people are already familiar / comfortable with this style of testing, >>>> and therefore are more likely to contribute good tests. >>>> >>>> I don't have a schedule for when this will be supported within the >>>> OpenJDK build and test process, but we're working on it. >>> >>> It seems, jtreg to JUnit bridge is already existing: >>> http://mail.openjdk.java.net/pipermail/hotspot-compiler-dev/2009-October/002003.html >>> >>> >>> >>> I also have found an example: >>> http://cr.openjdk.java.net/~jrose/6891770/webrev.00/test/java/dyn/MethodHandlesTest.java.html >>> >>> >>> >>> -Ulf >>> >>> >> From yuka.kamiya at oracle.com Tue Apr 3 02:56:46 2012 From: yuka.kamiya at oracle.com (yuka.kamiya at oracle.com) Date: Tue, 03 Apr 2012 02:56:46 +0000 Subject: hg: jdk8/tl/jdk: 7158483: (tz) Support tzdata2012c Message-ID: <20120403025703.8C1F247CE3@hg.openjdk.java.net> Changeset: d0e8c9361bc0 Author: peytoia Date: 2012-04-03 11:52 +0900 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/d0e8c9361bc0 7158483: (tz) Support tzdata2012c Reviewed-by: okutsu ! make/sun/javazic/tzdata/VERSION ! make/sun/javazic/tzdata/africa ! make/sun/javazic/tzdata/antarctica ! make/sun/javazic/tzdata/asia ! make/sun/javazic/tzdata/australasia ! make/sun/javazic/tzdata/europe ! make/sun/javazic/tzdata/leapseconds ! make/sun/javazic/tzdata/northamerica ! make/sun/javazic/tzdata/southamerica ! make/sun/javazic/tzdata/zone.tab ! src/share/classes/sun/util/resources/TimeZoneNames.java ! src/share/classes/sun/util/resources/TimeZoneNames_de.java ! src/share/classes/sun/util/resources/TimeZoneNames_es.java ! src/share/classes/sun/util/resources/TimeZoneNames_fr.java ! src/share/classes/sun/util/resources/TimeZoneNames_it.java ! src/share/classes/sun/util/resources/TimeZoneNames_ja.java ! src/share/classes/sun/util/resources/TimeZoneNames_ko.java ! src/share/classes/sun/util/resources/TimeZoneNames_pt_BR.java ! src/share/classes/sun/util/resources/TimeZoneNames_sv.java ! src/share/classes/sun/util/resources/TimeZoneNames_zh_CN.java ! src/share/classes/sun/util/resources/TimeZoneNames_zh_TW.java From dl at cs.oswego.edu Tue Apr 3 23:23:20 2012 From: dl at cs.oswego.edu (Doug Lea) Date: Tue, 03 Apr 2012 19:23:20 -0400 Subject: RFR 6963841: java/util/concurrent/Phaser/Basic.java fails intermittently In-Reply-To: <4F799FAC.2010404@oracle.com> References: <4F712E45.9010208@oracle.com> <4F719D5F.9020501@cs.oswego.edu> <4F75977B.4010206@oracle.com> <4F798D69.5010108@oracle.com> <4F799845.9060401@cs.oswego.edu> <4F799FAC.2010404@oracle.com> Message-ID: <4F7B8668.7010401@cs.oswego.edu> On 04/02/12 08:46, Chris Hegarty wrote: >> I think you are both right -- the main thread must delay but need not >> re-interrupt. > > Yes, re-interrupting is not ideal, but it looks like > Phaser.awaitAdvanceInterruptibly differs from say CyclicBarrier.await. > CyclicBarrier.await is spec'ed to throw IE is there is a pending interrupt when > it is called. Is this the expected behavior of Phaser.awaitAdvanceInterruptibly > too? I was assuming not, that is why I tried to have interrupt invoked after the > thread blocked in awaitAdvanceInterruptibly. It will only check interrupt if it would otherwise wait, but it doesn't consume the interrupt in any case, so one interrupt should be enough in all the scenarios that can occur in that test. > > On the test side it may be sufficient to just delay/sleep the main thread for 2 > seconds before call interrupt. I think this is what you are suggesting, right? Yes. -Doug > > -Chris. > > >> >> -Doug >> >> >>> >>> David >>> >>>> The solution is to retry the interrupt if we know the target thread >>>> hasn't thrown anything. >>>> >>>> http://cr.openjdk.java.net/~chegar/6963841/webrev.01/webrev/ >>>> >>>> -Chris. >>>> >>>> >>>> On 27/03/2012 11:58, Doug Lea wrote: >>>>> On 03/26/12 23:04, Chris Hegarty wrote: >>>>>> David, Doug, >>>>>> >>>>>> This test has been failing intermittently on jdk7u-dev and jdk8 for a >>>>>> while now. >>>>>> It only appears to fail when run in our internal build/test system >>>>>> (JPRT). >>>>>> >>>>>> I believe the cause of the failure to be simply that the machines the >>>>>> test is >>>>>> run on are too slow, or very busy, and the defensive timeout in the >>>>>> test are not >>>>>> large enough to handle this. The solution is to increase these timeout >>>>>> (similar >>>>>> to other tests in the concurrency area that we increased the timeouts >>>>>> for too). >>>>>> >>>>> >>>>> OK. I synced with our version. As always, it is too bad that there >>>>> is no >>>>> way to operationalize the notion of "for some timeout value appropriate >>>>> for the platform, no TimeoutExceptions occur". >>>>> >>>>> -Doug >>> >> > From daniel.daugherty at oracle.com Wed Apr 4 01:49:24 2012 From: daniel.daugherty at oracle.com (daniel.daugherty at oracle.com) Date: Wed, 04 Apr 2012 01:49:24 +0000 Subject: hg: jdk8/tl: 7157296: FDS: ENABLE_FULL_DEBUG_SYMBOLS flag should only affect OPT builds Message-ID: <20120404014924.40AEA47D4D@hg.openjdk.java.net> Changeset: 4d45c7117e23 Author: dcubed Date: 2012-04-03 10:17 -0700 URL: http://hg.openjdk.java.net/jdk8/tl/rev/4d45c7117e23 7157296: FDS: ENABLE_FULL_DEBUG_SYMBOLS flag should only affect OPT builds Summary: Build option FULL_DEBUG_SYMBOLS=0 only affects OPT builds. Finish enabling ENABLE_FULL_DEBUG_SYMBOLS flag on Windows. Reviewed-by: ohair, jmelvin, sspitsyn ! make/Defs-internal.gmk ! make/hotspot-rules.gmk ! make/jdk-rules.gmk From daniel.daugherty at oracle.com Wed Apr 4 01:51:41 2012 From: daniel.daugherty at oracle.com (daniel.daugherty at oracle.com) Date: Wed, 04 Apr 2012 01:51:41 +0000 Subject: hg: jdk8/tl/jdk: 7157296: FDS: ENABLE_FULL_DEBUG_SYMBOLS flag should only affect OPT builds Message-ID: <20120404015201.48B6247D50@hg.openjdk.java.net> Changeset: 754945137012 Author: dcubed Date: 2012-04-03 12:57 -0700 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/754945137012 7157296: FDS: ENABLE_FULL_DEBUG_SYMBOLS flag should only affect OPT builds Summary: Build option FULL_DEBUG_SYMBOLS=0 only affects OPT builds. Finish enabling ENABLE_FULL_DEBUG_SYMBOLS flag on Windows. Reviewed-by: ohair, jmelvin, sspitsyn ! make/common/Defs-linux.gmk ! make/common/Defs-solaris.gmk ! make/common/Defs-windows.gmk ! make/common/Library.gmk ! make/common/Program.gmk From Ulf.Zibis at gmx.de Wed Apr 4 11:17:18 2012 From: Ulf.Zibis at gmx.de (Ulf Zibis) Date: Wed, 04 Apr 2012 13:17:18 +0200 Subject: jtreg, junit, and testng (was Re: Request for review : 7121314 : Behavior mismatch between AbstractCollection.toArray(T[] ) and its spec) In-Reply-To: <4F7A284A.1060901@oracle.com> References: <4F59FB70.8070300@gmx.de> <4F5FD9E2.3060805@gmx.de> <4F61C3F5.2030607@gmx.de> <4F6A2682.7070808@gmx.de> <4F6BA03C.5010906@gmx.de> <4F6CE686.9060206@gmx.de> <4F729B0F.30803@gmx.de> <4F72A1B5.4090209@oracle.com> <4F735D1B.3010007@gmx.de> <4F73AE95.8070900@oracle.com> <4F73BBB1.7060303@gmx.de> <4F75EFA8.6030305@oracle.com> <4F761912.5040809@gmx.de> <4F79E634.3040603@oracle.com> <4F7A1A08.8050404@gmx.de> <4F7A284A.1060901@oracle.com> Message-ID: <4F7C2DBE.70208@gmx.de> Thanks very much, Brian, -Ulf Am 03.04.2012 00:29, schrieb Brian Goetz: > The primary reason is: Oracle has internal processes that we must follow to use third-party > software in our products (whether open-source or closed-source products, and whether or not the > third-party software is ultimately distributed with the product or not.) An examination of the > TestNG license compared to the JUnit license suggested that it was going to be significantly > easier to obtain the required internal approvals for TestNG. > > Since TestNG is also pretty good (one could argue which is better, and there are pros and cons on > both sides of this argument, but its clearly "good enough"), we chose the path of "let's get > something done." > > > > On 4/2/2012 5:28 PM, Ulf Zibis wrote: >> Thanks Brian. >> >> Is there any article, why you prefer testNG over JUnit? >> >> -Ulf >> >> >> Am 02.04.2012 19:47, schrieb Brian Goetz: >>> Yes. We'll be migrating those to TestNG as part of the process. >>> >>> On 3/30/2012 4:35 PM, Ulf Zibis wrote: >>>> Am 30.03.2012 19:38, schrieb Brian Goetz: >>>>>> Similarly class Infrastructure could be reused over all JDK's >>>>>> tests. But >>>>>> personnally I would prefer to more and more use the JUnit >>>>>> framework. Is >>>>>> there already an existing example? >>>>> >>>>> There's good news on this front. We are in the process of making >>>>> TestNG a supported test framework for writing unit and regression >>>>> tests in OpenJDK. TestNG inherits a lot of ideas from JUnit, so JUnit >>>>> users should find it easy to use, and there are plugins for all the >>>>> big IDEs. >>>>> >>>>> The goal you state -- making it easier to reuse test infrastructure -- >>>>> is one of the reasons why we want to do this. Another is that many >>>>> people are already familiar / comfortable with this style of testing, >>>>> and therefore are more likely to contribute good tests. >>>>> >>>>> I don't have a schedule for when this will be supported within the >>>>> OpenJDK build and test process, but we're working on it. >>>> >>>> It seems, jtreg to JUnit bridge is already existing: >>>> http://mail.openjdk.java.net/pipermail/hotspot-compiler-dev/2009-October/002003.html >>>> >>>> >>>> >>>> I also have found an example: >>>> http://cr.openjdk.java.net/~jrose/6891770/webrev.00/test/java/dyn/MethodHandlesTest.java.html >>>> >>>> >>>> >>>> -Ulf >>>> >>>> >>> > From chris.hegarty at oracle.com Wed Apr 4 14:14:50 2012 From: chris.hegarty at oracle.com (chris.hegarty at oracle.com) Date: Wed, 04 Apr 2012 14:14:50 +0000 Subject: hg: jdk8/tl/jdk: 6963841: java/util/concurrent/Phaser/Basic.java fails intermittently Message-ID: <20120404141510.29CC647D79@hg.openjdk.java.net> Changeset: 85b7fcf14249 Author: chegar Date: 2012-04-04 15:14 +0100 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/85b7fcf14249 6963841: java/util/concurrent/Phaser/Basic.java fails intermittently Reviewed-by: dl, dholmes ! test/java/util/concurrent/Phaser/Basic.java From david.lloyd at redhat.com Wed Apr 4 15:48:59 2012 From: david.lloyd at redhat.com (David M. Lloyd) Date: Wed, 04 Apr 2012 10:48:59 -0500 Subject: JEP 154: Remove Serialization In-Reply-To: <4F797CA5.7070604@paradise.net.nz> References: <20120401184228.D8D39F29@eggemoggin.niobe.net> <4F797CA5.7070604@paradise.net.nz> Message-ID: <4F7C6D6B.6070006@redhat.com> I was going to post a patch & feature request to add "goto" into the language. But I had a baby and so I didn't have time to finish it up, unfortunately. The best part is that I was (and am) half-serious about it :) Doing a JEP is even more clever though. It lends a certain amount of credibility. At least until you read the "Motivation" section anyway. On 04/02/2012 05:17 AM, Bruce Chapman wrote: > Nice try, almost believable. Of course my guard was down because the 1st > was yesterday down under here. > > > > On 2/04/2012 6:42 a.m., mark.reinhold at oracle.com wrote: >> Posted: http://openjdk.java.net/jeps/154 >> >> - Mark >> > -- - DML From neugens.limasoftware at gmail.com Wed Apr 4 15:59:30 2012 From: neugens.limasoftware at gmail.com (Mario Torre) Date: Wed, 4 Apr 2012 17:59:30 +0200 Subject: JEP 154: Remove Serialization In-Reply-To: <4F7C6D6B.6070006@redhat.com> References: <20120401184228.D8D39F29@eggemoggin.niobe.net> <4F797CA5.7070604@paradise.net.nz> <4F7C6D6B.6070006@redhat.com> Message-ID: 2012/4/4 David M. Lloyd : > I was going to post a patch & feature request to add "goto" into the > language. ?But I had a baby and so I didn't have time to finish it up, > unfortunately. ?The best part is that I was (and am) half-serious about it > :) > > Doing a JEP is even more clever though. ?It lends a certain amount of > credibility. ?At least until you read the "Motivation" section anyway. But the best part of it is that those JEP are still online :) http://openjdk.java.net/jeps/0 And there you really see them listed by "name"! Cheers, Mario -- pgp key: http://subkeys.pgp.net/ PGP Key ID: 80F240CF Fingerprint: BA39 9666 94EC 8B73 27FA? FC7C 4086 63E3 80F2 40CF IcedRobot: www.icedrobot.org Proud GNU Classpath developer: http://www.classpath.org/ Read About us at: http://planet.classpath.org OpenJDK: http://openjdk.java.net/projects/caciocavallo/ Please, support open standards: http://endsoftpatents.org/ From joe.darcy at oracle.com Wed Apr 4 16:49:22 2012 From: joe.darcy at oracle.com (Joe Darcy) Date: Wed, 04 Apr 2012 09:49:22 -0700 Subject: JEP 154: Remove Serialization In-Reply-To: <4F7C6D6B.6070006@redhat.com> References: <20120401184228.D8D39F29@eggemoggin.niobe.net> <4F797CA5.7070604@paradise.net.nz> <4F7C6D6B.6070006@redhat.com> Message-ID: <4F7C7B92.6050709@oracle.com> On 4/4/2012 8:48 AM, David M. Lloyd wrote: > I was going to post a patch & feature request to add "goto" into the > language. But I had a baby and so I didn't have time to finish it up, > unfortunately. The best part is that I was (and am) half-serious > about it :) Luckily, such a request has already been written up ;-) "Goto for the Java Programming Language " https://blogs.oracle.com/darcy/entry/upcoming_jep Enjoy, -Joe > > Doing a JEP is even more clever though. It lends a certain amount of > credibility. At least until you read the "Motivation" section anyway. > > On 04/02/2012 05:17 AM, Bruce Chapman wrote: >> Nice try, almost believable. Of course my guard was down because the 1st >> was yesterday down under here. >> >> >> >> On 2/04/2012 6:42 a.m., mark.reinhold at oracle.com wrote: >>> Posted: http://openjdk.java.net/jeps/154 >>> >>> - Mark >>> >> > > From david.lloyd at redhat.com Wed Apr 4 17:42:53 2012 From: david.lloyd at redhat.com (David M. Lloyd) Date: Wed, 04 Apr 2012 12:42:53 -0500 Subject: JEP 154: Remove Serialization In-Reply-To: <4F7C7B92.6050709@oracle.com> References: <20120401184228.D8D39F29@eggemoggin.niobe.net> <4F797CA5.7070604@paradise.net.nz> <4F7C6D6B.6070006@redhat.com> <4F7C7B92.6050709@oracle.com> Message-ID: <4F7C881D.6090206@redhat.com> Excellent :) The reason I got onto this path was building compact DFAs. It actually seems like something Java ought to be able to do IMO. For now I'm looking into bytecode generation though, which will probably suffice. On 04/04/2012 11:49 AM, Joe Darcy wrote: > On 4/4/2012 8:48 AM, David M. Lloyd wrote: >> I was going to post a patch & feature request to add "goto" into the >> language. But I had a baby and so I didn't have time to finish it up, >> unfortunately. The best part is that I was (and am) half-serious about >> it :) > > Luckily, such a request has already been written up ;-) > > "Goto for the Java Programming Language " > https://blogs.oracle.com/darcy/entry/upcoming_jep > > Enjoy, > > -Joe > >> >> Doing a JEP is even more clever though. It lends a certain amount of >> credibility. At least until you read the "Motivation" section anyway. >> >> On 04/02/2012 05:17 AM, Bruce Chapman wrote: >>> Nice try, almost believable. Of course my guard was down because the 1st >>> was yesterday down under here. >>> >>> >>> >>> On 2/04/2012 6:42 a.m., mark.reinhold at oracle.com wrote: >>>> Posted: http://openjdk.java.net/jeps/154 >>>> >>>> - Mark >>>> >>> >> >> > -- - DML From stuart.marks at oracle.com Wed Apr 4 22:56:50 2012 From: stuart.marks at oracle.com (stuart.marks at oracle.com) Date: Wed, 04 Apr 2012 22:56:50 +0000 Subject: hg: jdk8/tl/jdk: 7159130: add java/rmi/transport/pinClientSocketFactory to problem list Message-ID: <20120404225710.0A0DB47DE6@hg.openjdk.java.net> Changeset: 19c6ad447258 Author: dmocek Date: 2012-04-04 15:57 -0700 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/19c6ad447258 7159130: add java/rmi/transport/pinClientSocketFactory to problem list Reviewed-by: smarks ! test/ProblemList.txt From david.holmes at oracle.com Thu Apr 5 02:50:59 2012 From: david.holmes at oracle.com (David Holmes) Date: Thu, 05 Apr 2012 12:50:59 +1000 Subject: Initial preview: JEP-149 Reduced Class instance size Message-ID: <4F7D0893.9090901@oracle.com> http://cr.openjdk.java.net/~dholmes/JEP-149/webrev/ This is an early look at a proposed change to reduce the instance size of Java Class objects in the common case that reflection is not used. In SE 7 a java.lang.Class instance is 104 bytes on 32-bit systems. It consists of the 8-byte object header, 19 declared fields and 5 injected fields (fields added by the VM as-if they were declared in java.lang.Class but which do not appear in the Java source code). There are 10 reference fields associated with reflection caching that can be moved to a helper object with no impact on the VM or serialization protocols. Adding back a reference for the helper, that saves 9 references. Notionally this is 36 bytes on 32-bit but due to 8-byte alignment it only saves 32 bytes. That gives a size of 72 bytes - a reduction of 30%. This initial modification has been prototyped for initial performance measurements. Note that if reflection is used then the amount of memory used by the Class will increase by 8-bytes - that being the additional object header of the ReflectionHelper instance. So the net gain depends on the ratio of reflection using classes to non-reflection-using classes in an application. Please note that I've put this out just before I disappear on vacation for 10 days, so if you don't see any responses from me that is why. :) Thanks, David Holmes From brian.goetz at oracle.com Thu Apr 5 03:28:11 2012 From: brian.goetz at oracle.com (Brian Goetz) Date: Wed, 04 Apr 2012 23:28:11 -0400 Subject: Initial preview: JEP-149 Reduced Class instance size In-Reply-To: <4F7D0893.9090901@oracle.com> References: <4F7D0893.9090901@oracle.com> Message-ID: <4F7D114B.1040408@oracle.com> Reducing the number of SoftReferences in ReflectionHelper also seems an attractive target for memory reduction. Rather than eight soft references (eight extra objects), maintaining a SoftRef to the entire RH, or at least to the part of the RH that is currently SR'ed if the two non-SR'ed fields can't be recomputed, would save you a whole pile of objects per class (and might also reduce pressure on GC, having 8x fewer SRs to process.) Finally, you may be able save an extra field per Class by storing the ReflectionHelper in a ClassValue on Java SE 8, rather than a field. On 4/4/2012 10:50 PM, David Holmes wrote: > http://cr.openjdk.java.net/~dholmes/JEP-149/webrev/ > > This is an early look at a proposed change to reduce the instance size > of Java Class objects in the common case that reflection is not used. > > In SE 7 a java.lang.Class instance is 104 bytes on 32-bit systems. It > consists of the 8-byte object header, 19 declared fields and 5 injected > fields (fields added by the VM as-if they were declared in > java.lang.Class but which do not appear in the Java source code). There > are 10 reference fields associated with reflection caching that can be > moved to a helper object with no impact on the VM or serialization > protocols. Adding back a reference for the helper, that saves 9 > references. Notionally this is 36 bytes on 32-bit but due to 8-byte > alignment it only saves 32 bytes. That gives a size of 72 bytes - a > reduction of 30%. This initial modification has been prototyped for > initial performance measurements. > > Note that if reflection is used then the amount of memory used by the > Class will increase by 8-bytes - that being the additional object header > of the ReflectionHelper instance. So the net gain depends on the ratio > of reflection using classes to non-reflection-using classes in an > application. > > Please note that I've put this out just before I disappear on vacation > for 10 days, so if you don't see any responses from me that is why. :) > > Thanks, > David Holmes From hinkmond.wong at oracle.com Thu Apr 5 06:07:30 2012 From: hinkmond.wong at oracle.com (Hinkmond Wong) Date: Wed, 04 Apr 2012 23:07:30 -0700 Subject: Initial preview: JEP-149 Reduced Class instance size In-Reply-To: <4F7D114B.1040408@oracle.com> References: <4F7D0893.9090901@oracle.com> <4F7D114B.1040408@oracle.com> Message-ID: <4F7D36A2.8010208@oracle.com> Hi Brian, One of the issues we have in the Java Embedded group (as David points out in his summary), is that while on paper the theoretical max savings seems great (as you point out also), in practice as David points out in his note, this might be a wash if there are a lot more reflection using classes vs. non-reflection using classes in "typical" real-world applications, not the low or zero reflection using class ratio that happens in the theoretical "best case". So, a question comes up if we should judge the merit of this change on the theoretical "best case" scenario, or should we judge it on real-world applicability to "typical" apps (such as a finite set of customer surveyed embedded apps that we feel represent a real-world scenario). Thanks, Hinkmond On 4/4/12 8:28 PM, Brian Goetz wrote: > Reducing the number of SoftReferences in ReflectionHelper also seems > an attractive target for memory reduction. Rather than eight soft > references (eight extra objects), maintaining a SoftRef to the entire > RH, or at least to the part of the RH that is currently SR'ed if the > two non-SR'ed fields can't be recomputed, would save you a whole pile > of objects per class (and might also reduce pressure on GC, having 8x > fewer SRs to process.) > > Finally, you may be able save an extra field per Class by storing the > ReflectionHelper in a ClassValue on Java SE 8, rather than a field. > > On 4/4/2012 10:50 PM, David Holmes wrote: >> http://cr.openjdk.java.net/~dholmes/JEP-149/webrev/ >> >> This is an early look at a proposed change to reduce the instance size >> of Java Class objects in the common case that reflection is not used. >> >> In SE 7 a java.lang.Class instance is 104 bytes on 32-bit systems. It >> consists of the 8-byte object header, 19 declared fields and 5 injected >> fields (fields added by the VM as-if they were declared in >> java.lang.Class but which do not appear in the Java source code). There >> are 10 reference fields associated with reflection caching that can be >> moved to a helper object with no impact on the VM or serialization >> protocols. Adding back a reference for the helper, that saves 9 >> references. Notionally this is 36 bytes on 32-bit but due to 8-byte >> alignment it only saves 32 bytes. That gives a size of 72 bytes - a >> reduction of 30%. This initial modification has been prototyped for >> initial performance measurements. >> >> Note that if reflection is used then the amount of memory used by the >> Class will increase by 8-bytes - that being the additional object header >> of the ReflectionHelper instance. So the net gain depends on the ratio >> of reflection using classes to non-reflection-using classes in an >> application. >> >> Please note that I've put this out just before I disappear on vacation >> for 10 days, so if you don't see any responses from me that is why. :) >> >> Thanks, >> David Holmes -- Oracle Hinkmond Wong | Consulting Member of Technical Staff Phone: _+1 408.276.7618_ | Fax: _+1 408.276.7674_ Oracle Java Embedded 4210 Network Ci., M/S USCA22-rm2364 | Santa Clara, CA 95054 Green Oracle Oracle is committed to developing practices and products that help protect the environment From david.holmes at oracle.com Thu Apr 5 06:18:30 2012 From: david.holmes at oracle.com (David Holmes) Date: Thu, 05 Apr 2012 16:18:30 +1000 Subject: Initial preview: JEP-149 Reduced Class instance size In-Reply-To: <4F7D114B.1040408@oracle.com> References: <4F7D0893.9090901@oracle.com> <4F7D114B.1040408@oracle.com> Message-ID: <4F7D3936.1040102@oracle.com> Hi Brian, Thanks for the comments. On 5/04/2012 1:28 PM, Brian Goetz wrote: > Reducing the number of SoftReferences in ReflectionHelper also seems an > attractive target for memory reduction. Rather than eight soft > references (eight extra objects), maintaining a SoftRef to the entire > RH, or at least to the part of the RH that is currently SR'ed if the two > non-SR'ed fields can't be recomputed, would save you a whole pile of > objects per class (and might also reduce pressure on GC, having 8x fewer > SRs to process.) I'd have to consider the intended semantics of these soft references before considering any change here. It would hard to predict how this might impact runtime performance if we have coarser-grained soft references. The current changes should be semantically null. > Finally, you may be able save an extra field per Class by storing the > ReflectionHelper in a ClassValue on Java SE 8, rather than a field. ClassValue is something I'm keeping an eye on, but an entry in ClassValue is going to consume more dynamic memory than a single direct field. Thanks, David > On 4/4/2012 10:50 PM, David Holmes wrote: >> http://cr.openjdk.java.net/~dholmes/JEP-149/webrev/ >> >> This is an early look at a proposed change to reduce the instance size >> of Java Class objects in the common case that reflection is not used. >> >> In SE 7 a java.lang.Class instance is 104 bytes on 32-bit systems. It >> consists of the 8-byte object header, 19 declared fields and 5 injected >> fields (fields added by the VM as-if they were declared in >> java.lang.Class but which do not appear in the Java source code). There >> are 10 reference fields associated with reflection caching that can be >> moved to a helper object with no impact on the VM or serialization >> protocols. Adding back a reference for the helper, that saves 9 >> references. Notionally this is 36 bytes on 32-bit but due to 8-byte >> alignment it only saves 32 bytes. That gives a size of 72 bytes - a >> reduction of 30%. This initial modification has been prototyped for >> initial performance measurements. >> >> Note that if reflection is used then the amount of memory used by the >> Class will increase by 8-bytes - that being the additional object header >> of the ReflectionHelper instance. So the net gain depends on the ratio >> of reflection using classes to non-reflection-using classes in an >> application. >> >> Please note that I've put this out just before I disappear on vacation >> for 10 days, so if you don't see any responses from me that is why. :) >> >> Thanks, >> David Holmes From martijnverburg at gmail.com Thu Apr 5 06:18:40 2012 From: martijnverburg at gmail.com (Martijn Verburg) Date: Thu, 5 Apr 2012 09:18:40 +0300 Subject: Initial preview: JEP-149 Reduced Class instance size In-Reply-To: <4F7D36A2.8010208@oracle.com> References: <4F7D0893.9090901@oracle.com> <4F7D114B.1040408@oracle.com> <4F7D36A2.8010208@oracle.com> Message-ID: Hi Hinkmond, Is there a corpus of code you can look at in the embedded space to see what ratio of real-world apps use a lot of reflection? We have access to a corpus in the SE space (some Cambridge PhD students that work with us) and I know Brian/Joe et al use one internally at Oracle as well, would be an interesting comparison. Cheers, Martijn On 5 April 2012 09:07, Hinkmond Wong wrote: > Hi Brian, > > One of the issues we have in the Java Embedded group (as David points out > in his summary), is that while on paper the theoretical max savings seems > great (as you point out also), in practice as David points out in his note, > this might be a wash if there are a lot more reflection using classes vs. > non-reflection using classes in "typical" real-world applications, not the > low or zero reflection using class ratio that happens in the theoretical > "best case". > > So, a question comes up if we should judge the merit of this change on the > theoretical "best case" scenario, or should we judge it on real-world > applicability to "typical" apps (such as a finite set of customer surveyed > embedded apps that we feel represent a real-world scenario). > > > Thanks, > Hinkmond > > > On 4/4/12 8:28 PM, Brian Goetz wrote: > >> Reducing the number of SoftReferences in ReflectionHelper also seems an >> attractive target for memory reduction. Rather than eight soft references >> (eight extra objects), maintaining a SoftRef to the entire RH, or at least >> to the part of the RH that is currently SR'ed if the two non-SR'ed fields >> can't be recomputed, would save you a whole pile of objects per class (and >> might also reduce pressure on GC, having 8x fewer SRs to process.) >> >> Finally, you may be able save an extra field per Class by storing the >> ReflectionHelper in a ClassValue on Java SE 8, rather than a field. >> >> On 4/4/2012 10:50 PM, David Holmes wrote: >> >>> http://cr.openjdk.java.net/~**dholmes/JEP-149/webrev/ >>> >>> This is an early look at a proposed change to reduce the instance size >>> of Java Class objects in the common case that reflection is not used. >>> >>> In SE 7 a java.lang.Class instance is 104 bytes on 32-bit systems. It >>> consists of the 8-byte object header, 19 declared fields and 5 injected >>> fields (fields added by the VM as-if they were declared in >>> java.lang.Class but which do not appear in the Java source code). There >>> are 10 reference fields associated with reflection caching that can be >>> moved to a helper object with no impact on the VM or serialization >>> protocols. Adding back a reference for the helper, that saves 9 >>> references. Notionally this is 36 bytes on 32-bit but due to 8-byte >>> alignment it only saves 32 bytes. That gives a size of 72 bytes - a >>> reduction of 30%. This initial modification has been prototyped for >>> initial performance measurements. >>> >>> Note that if reflection is used then the amount of memory used by the >>> Class will increase by 8-bytes - that being the additional object header >>> of the ReflectionHelper instance. So the net gain depends on the ratio >>> of reflection using classes to non-reflection-using classes in an >>> application. >>> >>> Please note that I've put this out just before I disappear on vacation >>> for 10 days, so if you don't see any responses from me that is why. :) >>> >>> Thanks, >>> David Holmes >>> >> > > -- > Oracle > > Hinkmond Wong | Consulting Member of Technical Staff > Phone: _+1 408.276.7618_ | Fax: _+1 408.276.7674_ > Oracle Java Embedded > 4210 Network Ci., M/S USCA22-rm2364 | Santa Clara, CA 95054 > Green Oracle > > Oracle is committed to developing practices and products that help protect > the environment > > From stuart.marks at oracle.com Thu Apr 5 07:08:24 2012 From: stuart.marks at oracle.com (Stuart Marks) Date: Thu, 05 Apr 2012 00:08:24 -0700 Subject: Code Review Request: 7157893: Warnings Cleanup in java.util.* In-Reply-To: <4F755D32.6080804@univ-mlv.fr> References: <4F74FB13.3070407@oracle.com> <4F755D32.6080804@univ-mlv.fr> Message-ID: <4F7D44E8.1020408@oracle.com> Hi Kurchi, Remi, Sorry for the delay in this review. There were a lot of files to go through, and I wanted to dig up some history as well. (I've also been busy....) There are no real major issues, but I wanted to clear a couple things up and possibly file issues for further work. Comments follow on a file-by-file basis. src/share/classes/java/util/Arrays.java ---------------------------------------------------------------------- In this file there are several places where @SuppressWarnings is placed on a method, which is rather a broad scope. In some cases like mergeSort() it's probably not worth extracting expressions into declarations just to narrow the scope. In other cases there's a declaration handy already, for example those listed below. It would be good to narrow @SW to these declarations. - L2251 declaration of T[] copy - L2520 declaration of T[] copy src/share/classes/java/util/Collections.java ---------------------------------------------------------------------- - L1408 this casts to a raw Set in the parameter to super(). There was some discussion about this earlier [1], [2]. David Holmes had suggested casting to Set> but this still generates an unchecked warning. I haven't been able to figure out a cast that doesn't generate an unchecked warning (and I suspect Remi was in the same situation). So we might as well leave the cast to the raw type. For me, this only generates an unchecked warning, not a rawtypes warning, so maybe we can omit suppression of rawtypes warnings. I was going to suggest adding a comment to explain this but I suspect that would make this code even more confusing. [1] http://mail.openjdk.java.net/pipermail/jdk8-dev/2011-December/000497.html [2] http://mail.openjdk.java.net/pipermail/jdk8-dev/2011-December/000501.html src/share/classes/java/util/ComparableTimSort.java ---------------------------------------------------------------------- - L117 there's a @SuppressWarnings("UnnecessaryLocalVariable") and the local variable newArray really does seem unnecessary. Why not just assign tmp the result of new Object[]? - same at L866 Is there any reason to keep the local variables, for example, if this code came from an upstream repo? src/share/classes/java/util/Currency.java ---------------------------------------------------------------------- - L404 I don't think the @SuppressWarnings here is necessary, as there is @SW inside this method that suppresses a narrower scope. See [3]. I didn't see any other warnings in this method that needed suppression. [3] http://mail.openjdk.java.net/pipermail/jdk8-dev/2011-December/000469.html src/share/classes/java/util/EnumMap.java ---------------------------------------------------------------------- - I'm not sure why unmaskNull() was changed to return Object instead of V. There are bunch of places elsewhere in the file where it's used and its return value is cast to (V), generating unchecked warnings at those points. It seems to me that it would be preferable to have unmaskNull() return V and have @SW on its declaration than to have @SW sprinkled in a bunch of places elsewhere in the file. This makes unmaskNull() asymmetric with maskNull(), which returns Object, but that's the way the file was originally (so maybe that's OK). - L337 lines can be joined now that wildcards are shorter src/share/classes/java/util/HashMap.java ---------------------------------------------------------------------- - L393 a @SuppressWarnings is on the declaration of the for-loop index variable? This is somewhat unorthodox. I think it would be better to put the @SW on a new local variable just before the for-loop: @SuppressWarnings("unchecked") Entry first = (Entry)table[i]; for (Entry e = first; e != null; e = e.next) { - L413 similar to above - L442 Oooh, Entry -- a half-wildcard! ("Is this a feral type?" -- Joe Darcy) This is interesting and unusual and inconsistent with the use of Entry in the other put*() methods, but it actually makes sense in this case. It's worth a comment that explains that it's this way because e.key is explicitly used as an Object, not as type K. src/share/classes/java/util/Hashtable.java ---------------------------------------------------------------------- - L440, L479, L703, L1107 more cases of @SW on a for loop variable; change as noted above src/share/classes/java/util/PropertyPermission.java ---------------------------------------------------------------------- - L599 this is another case of "laundering" a conversion through a raw type (similar to Collections.java above), as we can't directly convert an Enumeration to Enumeration. As Remi noted in [4] this conversion wouldn't be necessary if Collections.enumeration() method were changed to take Collection instead of Collection. But that's an API change and should be handled separately. I'll file a bug on this. Meanwhile leaving the cast to raw is probably reasonable. There should be a comment that mentions the inability to convert directly to Enumeration. This generates an unchecked warning, so that should be suppressed too. [4] http://mail.openjdk.java.net/pipermail/jdk8-dev/2011-December/000488.html Thanks!! s'marks > On 03/30/2012 02:15 AM, Kurchi Hazra wrote: >> Bug : http://monaco.us.oracle.com/detail.jsf?cr=7157893 >> Webrev: http://cr.openjdk.java.net/~khazra/7157893/webrev.00/ >> >> Some related discussion that I could find in the core-libs-dev archives: >> http://mail.openjdk.java.net/pipermail/core-libs-dev/2011-December/008601.html >> http://mail.openjdk.java.net/pipermail/core-libs-dev/2011-December/008602.html From forax at univ-mlv.fr Thu Apr 5 08:12:55 2012 From: forax at univ-mlv.fr (=?UTF-8?B?UsOpbWkgRm9yYXg=?=) Date: Thu, 05 Apr 2012 10:12:55 +0200 Subject: Code Review Request: 7157893: Warnings Cleanup in java.util.* In-Reply-To: <4F7D44E8.1020408@oracle.com> References: <4F74FB13.3070407@oracle.com> <4F755D32.6080804@univ-mlv.fr> <4F7D44E8.1020408@oracle.com> Message-ID: <4F7D5407.1040808@univ-mlv.fr> On 04/05/2012 09:08 AM, Stuart Marks wrote: > Hi Kurchi, Remi, > > Sorry for the delay in this review. There were a lot of files to go > through, and I wanted to dig up some history as well. (I've also been > busy....) There are no real major issues, but I wanted to clear a > couple things up and possibly file issues for further work. > > Comments follow on a file-by-file basis. > > > > > src/share/classes/java/util/Arrays.java > ---------------------------------------------------------------------- > > In this file there are several places where @SuppressWarnings is > placed on a method, which is rather a broad scope. In some cases like > mergeSort() it's probably not worth extracting expressions into > declarations just to narrow the scope. In other cases there's a > declaration handy already, for example those listed below. It would be > good to narrow @SW to these declarations. > > - L2251 declaration of T[] copy so you want to move the @SupressWarnings on the local variable like this: public static T[] copyOf(U[] original, int newLength, Class newType) { @SuppressWarnings("unchecked") T[] copy = ((Object)newType == (Object)Object[].class) ? (T[]) new Object[newLength] : (T[]) Array.newInstance(newType.getComponentType(), newLength); ... I'm Ok this that. > > - L2520 declaration of T[] copy Ok too. > > > > src/share/classes/java/util/Collections.java > ---------------------------------------------------------------------- > > - L1408 this casts to a raw Set in the parameter to super(). There > was some discussion about this earlier [1], [2]. David Holmes had > suggested casting to Set> but this still > generates an unchecked warning. I haven't been able to figure out a > cast that doesn't generate an unchecked warning (and I suspect Remi > was in the same situation). You can't in fact. You have to explain to the type system that because the Set is unmodifiable, you can use it in a covariant way, there is no way to do that in Java because you can't put variance annotation at declaration site, but even with that you also need a way to say that all methods that take an E are not implemented and reflect that to the type-system. > So we might as well leave the cast to the raw type. For me, this only > generates an unchecked warning, not a rawtypes warning, so maybe we > can omit suppression of rawtypes warnings. Eclipse requires the two declarations. This is, in my opinion, a bug of Eclipse, I will report it but I would prefer to let the two declarations for now. > > I was going to suggest adding a comment to explain this but I suspect > that would make this code even more confusing. just perhaps something saying it's a known limitation of the type-system > > [1] > http://mail.openjdk.java.net/pipermail/jdk8-dev/2011-December/000497.html > > [2] > http://mail.openjdk.java.net/pipermail/jdk8-dev/2011-December/000501.html > > > > src/share/classes/java/util/ComparableTimSort.java > ---------------------------------------------------------------------- > > - L117 there's a @SuppressWarnings("UnnecessaryLocalVariable") and > the local variable newArray really does seem unnecessary. Why not just > assign tmp the result of new Object[]? > > - same at L866 > > Is there any reason to keep the local variables, for example, if this > code came from an upstream repo? As far as I know, this code was written by Josh and comes from the Doug repository. > > > > src/share/classes/java/util/Currency.java > ---------------------------------------------------------------------- > > - L404 I don't think the @SuppressWarnings here is necessary, as > there is @SW inside this method that suppresses a narrower scope. See > [3]. I didn't see any other warnings in this method that needed > suppression. You're right, it's a merge issue for me. The annotation should be removed. > > [3] > http://mail.openjdk.java.net/pipermail/jdk8-dev/2011-December/000469.html > > > > src/share/classes/java/util/EnumMap.java > ---------------------------------------------------------------------- > > - I'm not sure why unmaskNull() was changed to return Object instead > of V. There are bunch of places elsewhere in the file where it's used > and its return value is cast to (V), generating unchecked warnings at > those points. It seems to me that it would be preferable to have > unmaskNull() return V and have @SW on its declaration than to have @SW > sprinkled in a bunch of places elsewhere in the file. This makes > unmaskNull() asymmetric with maskNull(), which returns Object, but > that's the way the file was originally (so maybe that's OK). > > - L337 lines can be joined now that wildcards are shorter I disagree, the casts should be put where they are needed and you don't need them for equals and remove which work with an Object and do not require a V. If one day generics are reified, unlike today, the VM will have to execute some code for these casts, so I prefer to have them only if it's needed even if you have to put more @SW. > > > > src/share/classes/java/util/HashMap.java > ---------------------------------------------------------------------- > > - L393 a @SuppressWarnings is on the declaration of the for-loop > index variable? This is somewhat unorthodox. I think it would be > better to put the @SW on a new local variable just before the for-loop: > > @SuppressWarnings("unchecked") > Entry first = (Entry)table[i]; > for (Entry e = first; e != null; e = e.next) { > > - L413 similar to above The unorthodox thing here is the fact that in Java you can declare a variable in a for loop. If you don't want that, I prefer @SuppressWarnings("unchecked") Entry e = (Entry)table[i]; for (; e != null; e = e.next) { it extends the scope of the variable but it will not be flagged by static bytecode analyzers as an unneeded local variable. > > - L442 Oooh, Entry -- a half-wildcard! ("Is this a feral type?" > -- Joe Darcy) yes, a kind of semi-domesticated type :) > This is interesting and unusual and inconsistent with the use of > Entry in the other put*() methods, but it actually makes sense in > this case. It's worth a comment that explains that it's this way > because e.key is explicitly used as an Object, not as type K. > > > > src/share/classes/java/util/Hashtable.java > ---------------------------------------------------------------------- > > - L440, L479, L703, L1107 more cases of @SW on a for loop variable; > change as noted above so same as above. > > > > src/share/classes/java/util/PropertyPermission.java > ---------------------------------------------------------------------- > > - L599 this is another case of "laundering" a conversion through a > raw type (similar to Collections.java above), as we can't directly > convert an Enumeration to Enumeration. > As Remi noted in [4] this conversion wouldn't be necessary if > Collections.enumeration() method were changed to take Collection extends T> instead of Collection. But that's an API change and > should be handled separately. I'll file a bug on this. > > Meanwhile leaving the cast to raw is probably reasonable. There should > be a comment that mentions the inability to convert directly to > Enumeration. This generates an unchecked warning, so that > should be suppressed too. Ok. > > [4] > http://mail.openjdk.java.net/pipermail/jdk8-dev/2011-December/000488.html > > > Thanks!! > > s'marks many thanks too. R?mi From chris.hegarty at oracle.com Thu Apr 5 12:58:43 2012 From: chris.hegarty at oracle.com (chris.hegarty at oracle.com) Date: Thu, 05 Apr 2012 12:58:43 +0000 Subject: hg: jdk8/tl/jdk: 7133806: Typo in Files.newByteChannel javadoc Message-ID: <20120405125912.57B7747E19@hg.openjdk.java.net> Changeset: 92de69b24416 Author: jgish Date: 2012-04-05 13:57 +0100 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/92de69b24416 7133806: Typo in Files.newByteChannel javadoc Reviewed-by: chegar ! src/share/classes/java/nio/file/Files.java From chris.hegarty at oracle.com Thu Apr 5 13:04:06 2012 From: chris.hegarty at oracle.com (Chris Hegarty) Date: Thu, 05 Apr 2012 14:04:06 +0100 Subject: hg: jdk8/tl/jdk: 7133806: Typo in Files.newByteChannel javadoc In-Reply-To: <20120405125912.57B7747E19@hg.openjdk.java.net> References: <20120405125912.57B7747E19@hg.openjdk.java.net> Message-ID: <4F7D9846.3050201@oracle.com> [ I took the liberty of pushing this one for you Jim ] Congratulations on your first OpenJDK contribution. I'm sure there will be many more! -Chris. On 05/04/2012 13:58, chris.hegarty at oracle.com wrote: > Changeset: 92de69b24416 > Author: jgish > Date: 2012-04-05 13:57 +0100 > URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/92de69b24416 > > 7133806: Typo in Files.newByteChannel javadoc > Reviewed-by: chegar > > ! src/share/classes/java/nio/file/Files.java > From hinkmond.wong at oracle.com Thu Apr 5 17:25:16 2012 From: hinkmond.wong at oracle.com (Hinkmond Wong) Date: Thu, 05 Apr 2012 10:25:16 -0700 Subject: Initial preview: JEP-149 Reduced Class instance size In-Reply-To: References: <4F7D0893.9090901@oracle.com> <4F7D114B.1040408@oracle.com> <4F7D36A2.8010208@oracle.com> Message-ID: <4F7DD57C.7010304@oracle.com> On 4/4/2012 11:18 PM, Martijn Verburg wrote: > Hi Hinkmond, > > Is there a corpus of code you can look at in the embedded space to see > what ratio of real-world apps use a lot of reflection? We have access > to a corpus in the SE space (some Cambridge PhD students that work > with us) and I know Brian/Joe et al use one internally at Oracle as > well, would be an interesting comparison. > Hi Martin, There is no corpus of sample code for Embedded that I know of. Maybe Bob Vandette or David Holmes knows of one for Java SE desktop/server also? But, we've discussed in our team, possibilities for more embedded-appropriate real-world apps and are in process of obtaining those now from different embedded developers. If anyone out there has any suggestions, please send them in. Some that we've considered include various OSGi implementations for embedded and Jetty. Can you send a pointer to the SE corpus of code that you know of (the one you mentioned that the Cambridge PhD students worked on)? Or, is that Brian Goetz and Joe Darcy that you mean who have used it before at Oracle? Thanks, Hinkmond > > On 5 April 2012 09:07, Hinkmond Wong > wrote: > > Hi Brian, > > One of the issues we have in the Java Embedded group (as David > points out in his summary), is that while on paper the theoretical > max savings seems great (as you point out also), in practice as > David points out in his note, this might be a wash if there are a > lot more reflection using classes vs. non-reflection using classes > in "typical" real-world applications, not the low or zero > reflection using class ratio that happens in the theoretical "best > case". > > So, a question comes up if we should judge the merit of this > change on the theoretical "best case" scenario, or should we judge > it on real-world applicability to "typical" apps (such as a finite > set of customer surveyed embedded apps that we feel represent a > real-world scenario). > > > Thanks, > Hinkmond > > > On 4/4/12 8:28 PM, Brian Goetz wrote: > > Reducing the number of SoftReferences in ReflectionHelper also > seems an attractive target for memory reduction. Rather than > eight soft references (eight extra objects), maintaining a > SoftRef to the entire RH, or at least to the part of the RH > that is currently SR'ed if the two non-SR'ed fields can't be > recomputed, would save you a whole pile of objects per class > (and might also reduce pressure on GC, having 8x fewer SRs to > process.) > > Finally, you may be able save an extra field per Class by > storing the ReflectionHelper in a ClassValue on Java SE 8, > rather than a field. > > On 4/4/2012 10:50 PM, David Holmes wrote: > > http://cr.openjdk.java.net/~dholmes/JEP-149/webrev/ > > > This is an early look at a proposed change to reduce the > instance size > of Java Class objects in the common case that reflection > is not used. > > In SE 7 a java.lang.Class instance is 104 bytes on 32-bit > systems. It > consists of the 8-byte object header, 19 declared fields > and 5 injected > fields (fields added by the VM as-if they were declared in > java.lang.Class but which do not appear in the Java source > code). There > are 10 reference fields associated with reflection caching > that can be > moved to a helper object with no impact on the VM or > serialization > protocols. Adding back a reference for the helper, that > saves 9 > references. Notionally this is 36 bytes on 32-bit but due > to 8-byte > alignment it only saves 32 bytes. That gives a size of 72 > bytes - a > reduction of 30%. This initial modification has been > prototyped for > initial performance measurements. > > Note that if reflection is used then the amount of memory > used by the > Class will increase by 8-bytes - that being the additional > object header > of the ReflectionHelper instance. So the net gain depends > on the ratio > of reflection using classes to non-reflection-using > classes in an > application. > > Please note that I've put this out just before I disappear > on vacation > for 10 days, so if you don't see any responses from me > that is why. :) > > Thanks, > David Holmes > > > > -- > Oracle > > Hinkmond Wong | Consulting Member of Technical Staff > Phone: _+1 408.276.7618 _ | Fax: _+1 > 408.276.7674 _ > Oracle Java Embedded > 4210 Network Ci., M/S USCA22-rm2364 | Santa Clara, CA 95054 > Green Oracle Oracle is > committed to developing practices and products that help protect > the environment > > -- Oracle Hinkmond Wong | Consulting Member of Technical Staff Phone: _+1 408.276.7618_ | Fax: _+1 408.276.7674_ Oracle Java Embedded 4210 Network Ci., M/S USCA22-rm2364 | Santa Clara, CA 95054 Green Oracle Oracle is committed to developing practices and products that help protect the environment From stuart.marks at oracle.com Thu Apr 5 21:04:58 2012 From: stuart.marks at oracle.com (Stuart Marks) Date: Thu, 05 Apr 2012 14:04:58 -0700 Subject: Code Review Request: 7157893: Warnings Cleanup in java.util.* In-Reply-To: <4F7D5407.1040808@univ-mlv.fr> References: <4F74FB13.3070407@oracle.com> <4F755D32.6080804@univ-mlv.fr> <4F7D44E8.1020408@oracle.com> <4F7D5407.1040808@univ-mlv.fr> Message-ID: <4F7E08FA.8010200@oracle.com> On 4/5/12 1:12 AM, R?mi Forax wrote: > On 04/05/2012 09:08 AM, Stuart Marks wrote: >> >> src/share/classes/java/util/Collections.java >> ---------------------------------------------------------------------- >> >> - L1408 this casts to a raw Set in the parameter to super(). There was some >> discussion about this earlier [1], [2]. David Holmes had suggested casting to >> Set> but this still generates an unchecked warning. >> I haven't been able to figure out a cast that doesn't generate an unchecked >> warning (and I suspect Remi was in the same situation). > > You can't in fact. You have to explain to the type system that because the Set > is unmodifiable, > you can use it in a covariant way, there is no way to do that in Java because > you can't put > variance annotation at declaration site, but even with that you also need a way > to say that > all methods that take an E are not implemented and reflect that to the > type-system. OK, at least I wasn't missing something obvious. :-) >> So we might as well leave the cast to the raw type. For me, this only >> generates an unchecked warning, not a rawtypes warning, so maybe we can omit >> suppression of rawtypes warnings. > > Eclipse requires the two declarations. > This is, in my opinion, a bug of Eclipse, I will report it but I would prefer > to let the two declarations for now. I'm fine with leaving the "extra" rawtypes suppression. >> I was going to suggest adding a comment to explain this but I suspect that >> would make this code even more confusing. > > just perhaps something saying it's a known limitation of the type-system Yeah, probably something like "need to cast to raw in order to work around a limitation in the type system." >> src/share/classes/java/util/ComparableTimSort.java >> ---------------------------------------------------------------------- >> >> - L117 there's a @SuppressWarnings("UnnecessaryLocalVariable") and the local >> variable newArray really does seem unnecessary. Why not just assign tmp the >> result of new Object[]? >> >> - same at L866 >> >> Is there any reason to keep the local variables, for example, if this code >> came from an upstream repo? > > As far as I know, this code was written by Josh and comes from the Doug > repository. I couldn't find it in Doug Lea's JSR166 repository, if that's what you were referring to. Note that a similar code snippet appears in TimSort.java, extra local variable and all. I'm inclined to leave the @SW and extra local variable in place, on the off chance that there's some reason for having them that we're unaware of. >> src/share/classes/java/util/EnumMap.java >> ---------------------------------------------------------------------- >> >> - I'm not sure why unmaskNull() was changed to return Object instead of V. >> There are bunch of places elsewhere in the file where it's used and its >> return value is cast to (V), generating unchecked warnings at those points. >> It seems to me that it would be preferable to have unmaskNull() return V and >> have @SW on its declaration than to have @SW sprinkled in a bunch of places >> elsewhere in the file. This makes unmaskNull() asymmetric with maskNull(), >> which returns Object, but that's the way the file was originally (so maybe >> that's OK). >> >> - L337 lines can be joined now that wildcards are shorter > > I disagree, the casts should be put where they are needed and you don't need > them for equals and remove > which work with an Object and do not require a V. > If one day generics are reified, unlike today, the VM will have to execute some > code for these casts, > so I prefer to have them only if it's needed even if you have to put more @SW. I assume you disagree with my preference leave unmaskNull() returning V, not with joining the lines at L337. :-) I'm somewhat skeptical of making code changes now based on potential future benefits when/if generics become reified. This was discussed before; see http://mail.openjdk.java.net/pipermail/jdk8-dev/2011-December/000454.html In that message, John Rose said "If the best practices have to change, then we'll have to change that code again. Or maybe the retrofit strategy will have to take account of the existing code idioms. In any case, we'll cross that bridge when we get to it. (Coping with reification in this case is a decision to make tomorrow, not today.)" That said, if you think that unmaskNull() returning an Object makes sense, even after setting aside the reification issue, then I'm ok with this change. >> src/share/classes/java/util/HashMap.java >> ---------------------------------------------------------------------- >> >> - L393 a @SuppressWarnings is on the declaration of the for-loop index >> variable? This is somewhat unorthodox. I think it would be better to put the >> @SW on a new local variable just before the for-loop: >> >> @SuppressWarnings("unchecked") >> Entry first = (Entry)table[i]; >> for (Entry e = first; e != null; e = e.next) { >> >> - L413 similar to above > > The unorthodox thing here is the fact that in Java you can declare a variable > in a for loop. > If you don't want that, I prefer > > @SuppressWarnings("unchecked") > Entry e = (Entry)table[i]; > for (; e != null; e = e.next) { > > it extends the scope of the variable but it will not be flagged by static > bytecode analyzers > as an unneeded local variable. I'm more concerned with clarity of source code than extra local variables. We've left in extra locals before (ComparableTimSort.java above, and also in other files). And when we fix up code in response to warnings from static analyzers, we'll have more important things to deal with, I'm sure. In any case I think your suggested rewrite is fine. >> src/share/classes/java/util/Hashtable.java >> ---------------------------------------------------------------------- >> >> - L440, L479, L703, L1107 more cases of @SW on a for loop variable; change as >> noted above > > so same as above. Yes, same for these as well. s'marks From forax at univ-mlv.fr Fri Apr 6 10:06:31 2012 From: forax at univ-mlv.fr (=?UTF-8?B?UsOpbWkgRm9yYXg=?=) Date: Fri, 06 Apr 2012 12:06:31 +0200 Subject: Code Review Request: 7157893: Warnings Cleanup in java.util.* In-Reply-To: <4F7E08FA.8010200@oracle.com> References: <4F74FB13.3070407@oracle.com> <4F755D32.6080804@univ-mlv.fr> <4F7D44E8.1020408@oracle.com> <4F7D5407.1040808@univ-mlv.fr> <4F7E08FA.8010200@oracle.com> Message-ID: <4F7EC027.1040101@univ-mlv.fr> On 04/05/2012 11:04 PM, Stuart Marks wrote: [...] > >>> I was going to suggest adding a comment to explain this but I >>> suspect that >>> would make this code even more confusing. >> >> just perhaps something saying it's a known limitation of the type-system > > Yeah, probably something like "need to cast to raw in order to work > around a limitation in the type system." your English is better than mine :) > >>> src/share/classes/java/util/ComparableTimSort.java >>> ---------------------------------------------------------------------- >>> >>> - L117 there's a @SuppressWarnings("UnnecessaryLocalVariable") and >>> the local >>> variable newArray really does seem unnecessary. Why not just assign >>> tmp the >>> result of new Object[]? >>> >>> - same at L866 >>> >>> Is there any reason to keep the local variables, for example, if >>> this code >>> came from an upstream repo? >> >> As far as I know, this code was written by Josh and comes from the Doug >> repository. > > I couldn't find it in Doug Lea's JSR166 repository, if that's what you > were referring to. > > Note that a similar code snippet appears in TimSort.java, extra local > variable and all. After a dig up session, Martin Buchholz proposes the patch from sources written by Josh from the Android source repository. see http://mail.openjdk.java.net/pipermail/core-libs-dev/2009-June/001937.html > > I'm inclined to leave the @SW and extra local variable in place, on > the off chance that there's some reason for having them that we're > unaware of. I agree. > >>> src/share/classes/java/util/EnumMap.java >>> ---------------------------------------------------------------------- >>> >>> - I'm not sure why unmaskNull() was changed to return Object instead >>> of V. >>> There are bunch of places elsewhere in the file where it's used and its >>> return value is cast to (V), generating unchecked warnings at those >>> points. >>> It seems to me that it would be preferable to have unmaskNull() >>> return V and >>> have @SW on its declaration than to have @SW sprinkled in a bunch of >>> places >>> elsewhere in the file. This makes unmaskNull() asymmetric with >>> maskNull(), >>> which returns Object, but that's the way the file was originally (so >>> maybe >>> that's OK). >>> >>> - L337 lines can be joined now that wildcards are shorter >> >> I disagree, the casts should be put where they are needed and you >> don't need >> them for equals and remove >> which work with an Object and do not require a V. >> If one day generics are reified, unlike today, the VM will have to >> execute some >> code for these casts, >> so I prefer to have them only if it's needed even if you have to put >> more @SW. > > I assume you disagree with my preference leave unmaskNull() returning > V, not with joining the lines at L337. :-) yes. > > I'm somewhat skeptical of making code changes now based on potential > future benefits when/if generics become reified. This was discussed > before; see > > http://mail.openjdk.java.net/pipermail/jdk8-dev/2011-December/000454.html > > In that message, John Rose said "If the best practices have to change, > then we'll have to change that code again. Or maybe the retrofit > strategy will have to take account of the existing code idioms. In > any case, we'll cross that bridge when we get to it. (Coping with > reification in this case is a decision to make tomorrow, not today.)" I disagree with John. The main issue with generics nowadays is that most of the people doesn't care about a cast to a type variable because everybody knows about erasure. So codes are written with an implementation glitch in mind. Frankly, I don't know if reification will appear (yes it's a kind of magical) or not but I think it's a sloppy path to not consider all casts as equals. If unmaskNull return a V, the code of equals will upcast the value from Object to V to just after downcast it from V to Object, I think it's better that unmask to return Object and upcast it to V when it's necessary. > > That said, if you think that unmaskNull() returning an Object makes > sense, even after setting aside the reification issue, then I'm ok > with this change. see above. > > >>> src/share/classes/java/util/HashMap.java >>> ---------------------------------------------------------------------- >>> >>> - L393 a @SuppressWarnings is on the declaration of the for-loop index >>> variable? This is somewhat unorthodox. I think it would be better to >>> put the >>> @SW on a new local variable just before the for-loop: >>> >>> @SuppressWarnings("unchecked") >>> Entry first = (Entry)table[i]; >>> for (Entry e = first; e != null; e = e.next) { >>> >>> - L413 similar to above >> >> The unorthodox thing here is the fact that in Java you can declare a >> variable >> in a for loop. >> If you don't want that, I prefer >> >> @SuppressWarnings("unchecked") >> Entry e = (Entry)table[i]; >> for (; e != null; e = e.next) { >> >> it extends the scope of the variable but it will not be flagged by >> static >> bytecode analyzers >> as an unneeded local variable. > > I'm more concerned with clarity of source code than extra local > variables. We've left in extra locals before (ComparableTimSort.java > above, and also in other files). And when we fix up code in response > to warnings from static analyzers, we'll have more important things to > deal with, I'm sure. We are currently fixing warnings from a static analyzer :) For me, letting an extra local variable is not a big deal because perf tests was already done on that code moreover if my memory is good, this extra local variable is not in the middle of the loops of the sort. Here, you want to add a new local variable and I know by experience that if you have no luck that can be enough for Hotspot to don't inline a method that was previously inlined. Even the proposed change as an impact, too long to explain here, but it can make the size of the method a little bigger. Anyway, you're right that clarity is more important than any of these details. > > In any case I think your suggested rewrite is fine. > >>> src/share/classes/java/util/Hashtable.java >>> ---------------------------------------------------------------------- >>> >>> - L440, L479, L703, L1107 more cases of @SW on a for loop variable; >>> change as >>> noted above >> >> so same as above. > > Yes, same for these as well. > > s'marks > cheers, R?mi From jonathan.gibbons at oracle.com Fri Apr 6 17:11:08 2012 From: jonathan.gibbons at oracle.com (jonathan.gibbons at oracle.com) Date: Fri, 06 Apr 2012 17:11:08 +0000 Subject: hg: jdk8/tl/langtools: 7157626: Create a new test to check major version for a class file Message-ID: <20120406171110.AD3C547F04@hg.openjdk.java.net> Changeset: 55ae94116e89 Author: jjg Date: 2012-04-06 10:10 -0700 URL: http://hg.openjdk.java.net/jdk8/tl/langtools/rev/55ae94116e89 7157626: Create a new test to check major version for a class file Reviewed-by: jjg Contributed-by: sonali.goel at oracle.com + test/tools/javac/classfiles/ClassVersionChecker.java From stuart.marks at oracle.com Sat Apr 7 00:35:04 2012 From: stuart.marks at oracle.com (Stuart Marks) Date: Fri, 06 Apr 2012 17:35:04 -0700 Subject: Code Review Request: 7157893: Warnings Cleanup in java.util.* In-Reply-To: <4F7EC027.1040101@univ-mlv.fr> References: <4F74FB13.3070407@oracle.com> <4F755D32.6080804@univ-mlv.fr> <4F7D44E8.1020408@oracle.com> <4F7D5407.1040808@univ-mlv.fr> <4F7E08FA.8010200@oracle.com> <4F7EC027.1040101@univ-mlv.fr> Message-ID: <4F7F8BB8.6070103@oracle.com> Hi Kurchi, I think we've converged on the code changes. Please prepare and post another webrev for a final cross-check before pushing. What follows is I think merely residual disagreement over the philosophy of how to handle generic casts vs reification. :-) On 4/6/12 3:06 AM, R?mi Forax wrote: > On 04/05/2012 11:04 PM, Stuart Marks wrote: >> I'm somewhat skeptical of making code changes now based on potential future >> benefits when/if generics become reified. This was discussed before; see >> >> http://mail.openjdk.java.net/pipermail/jdk8-dev/2011-December/000454.html >> >> In that message, John Rose said "If the best practices have to change, then >> we'll have to change that code again. Or maybe the retrofit strategy will >> have to take account of the existing code idioms. In any case, we'll cross >> that bridge when we get to it. (Coping with reification in this case is a >> decision to make tomorrow, not today.)" > > I disagree with John. The main issue with generics nowadays is that > most of the people doesn't care about a cast to a type variable because > everybody knows about erasure. So codes are written with an implementation > glitch in mind. > Frankly, I don't know if reification will appear (yes it's a kind of magical) > or not > but I think it's a sloppy path to not consider all casts as equals. In order to program effectively with generics, I think you have to understand erasure and its implications. It may have been an unfortunate choice, but erasure is part of the language and we have to deal with it and in some cases rely on it. I don't think it's merely an "implementation glitch." The difficulty I have with reification is that while there are proposals floating around for how it could be done, nobody really knows how it will eventually turn out, nor whether it will actually be done. If it is eventually done, there will legal and illegal constructs, constructs that generate warnings, and perhaps a style guide for how to use reified generics properly. Right now, we can *imagine* what these future rules might be, but it seems untenable to me to try to make today's code conform to those imaginary future rules, especially in the absence of tools to help support those rules. > If unmaskNull return a V, the code of equals will upcast the value from Object > to V > to just after downcast it from V to Object, > I think it's better that unmask to return Object and upcast it to V when it's > necessary. Certainly there are cases where there's a redundant downcast and upcast. In a reified world, will this be a significant expense? Really, I have no idea. s'marks From stuart.marks at oracle.com Sat Apr 7 00:45:01 2012 From: stuart.marks at oracle.com (Stuart Marks) Date: Fri, 06 Apr 2012 17:45:01 -0700 Subject: Code Review Request: 7157893: Warnings Cleanup in java.util.* In-Reply-To: <4F7D44E8.1020408@oracle.com> References: <4F74FB13.3070407@oracle.com> <4F755D32.6080804@univ-mlv.fr> <4F7D44E8.1020408@oracle.com> Message-ID: <4F7F8E0D.5090705@oracle.com> On 4/5/12 12:08 AM, Stuart Marks wrote: > src/share/classes/java/util/PropertyPermission.java > ---------------------------------------------------------------------- > > - L599 this is another case of "laundering" a conversion through a raw type > (similar to Collections.java above), as we can't directly convert an > Enumeration to Enumeration. As Remi noted in > [4] this conversion wouldn't be necessary if Collections.enumeration() method > were changed to take Collection instead of Collection. But > that's an API change and should be handled separately. I'll file a bug on this. There's already a bug on this, with some discussion: http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6571613 The discussion revolves around how this interacts with type inference, and it mentions that "Smarter type inference may appear in JDK7." I know there have been type inference changes but I don't know how they would affect this case. Worth pursuing, anyway. s'marks From littlee at linux.vnet.ibm.com Mon Apr 9 01:57:17 2012 From: littlee at linux.vnet.ibm.com (Charles Lee) Date: Mon, 09 Apr 2012 09:57:17 +0800 Subject: Request for review : 7121314 : Behavior mismatch between AbstractCollection.toArray(T[] ) and its spec In-Reply-To: <4F7854A3.4090406@oracle.com> References: <4F5FD9E2.3060805@gmx.de> <4F61C3F5.2030607@gmx.de> <4F6A2682.7070808@gmx.de> <4F6BA03C.5010906@gmx.de> <4F6CE686.9060206@gmx.de> <4F729B0F.30803@gmx.de> <4F72A1B5.4090209@oracle.com> <4F735D1B.3010007@gmx.de> <4F73AE95.8070900@oracle.com> <4F7791A9.2000200@gmx.de> <4F77CAC7.2040709@oracle.com> <4F7854A3.4090406@oracle.com> Message-ID: <4F8241FD.30407@linux.vnet.ibm.com> Hi guys, I am trying to push the changeset to the gate, but no matter how I change the Contributed-by list, I always get: /searching for changes remote: adding changesets remote: adding manifests remote: adding file changes remote: added 1 changesets with 2 changes to 2 files remote: [jcheck a54aa58bfef9 2012-02-26 07:41 -0800] remote: remote: > Changeset: 5201:c8ef92791b47 remote: > Author: littlee remote: > Date: 2012-04-09 09:51 remote: > remote: > 7121314: Behavior mismatch between AbstractCollection.toArray(T[] ) and its spec remote: > Reviewed-by: dholmes, mduigou remote: > Contributed-by: Sean Zhou, Ulf Zibis, David Holmes remote: remote: Invalid contributor attribution/ I have tried: a. name pattern b. name, name, name c. zhouyx, dhomes, Ulf Zibis Does anybody have some experience on this? On 04/01/2012 09:14 PM, David Holmes wrote: > Thanks Sean. I'd say this is done. > > David > > On 1/04/2012 7:24 PM, Sean Chou wrote: >> Hi David, >> >> I made the new webrev with your modified testcase: >> http://cr.openjdk.java.net/~zhouyx/7121314/webrev.04/ . >> >> >> The link to the bug: >> http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=7121314 >> The link to the start of the thread: >> http://mail.openjdk.java.net/pipermail/core-libs-dev/2012-March/009512.html >> >> >> >> On Sun, Apr 1, 2012 at 11:25 AM, David Holmes > > wrote: >> >> Simplified testcase below. >> >> Let's finalise this please. >> >> Thanks, >> David >> >> >> On 1/04/2012 1:08 PM, Sean Chou wrote: >> >> Hi Ulf, >> >> This is a regression testcase, there is no performance >> issue or >> future refactoring. >> Please wait for David's comments. >> >> On Sun, Apr 1, 2012 at 7:22 AM, Ulf Zibis > >> >> wrote: >> >> Hi Sean, >> >> thanks for your effort. >> >> Am 31.03.2012 11:43, schrieb Sean Chou: >> >> Hi David and Ulf, >> >> The new webrev is at: >> http://cr.openjdk.java.net/~____zhouyx/7121314/webrev.03/ >> >> > > >> > >> >> > >> . >> >> >> About the fix, I remained the previous one. >> About the testcase, I merged the 3 files into one. >> During merging, there are 2 modifications: >> 1. I added static modifier to the 3 classes, which are >> enclosed >> by class ToArrayTest; >> >> You do not need the indirection via main()...run()...test() >> if you >> have all in 1 file. This was only necessary to feature a >> general >> usability of InfraStructure. You can go back to David's 1 + >> 1 nested >> class approach replacing TConcurrentHashMapX by >> TestCollection and >> maybe rename realMain() to test(). >> Additionally, loading 4 classes for 1 test would have some >> performance impact on the test run, which could be avoided. >> >> >> 2. I removed field TestCollection.fixedSize, which is >> never read >> after Ulf fixed the bug in testcase. >> >> This field would serve to "reset" the TestCollection to >> fixed >> default size without the need of new instantiation for later >> refactoring or testcase addition. >> >> As just discussed before, the doc for setSizeSequence() >> could be >> little more specific: >> 71 /* >> 72 * Sets the values that size() will return on >> each use. >> The first >> 73 * call to size will return sizes[0], then >> sizes[1] >> etc. This >> 74 * allows us to emulate a concurrent change >> to the >> contents of >> 75 * the collection without having to perform >> concurrent >> changes. >> 76 * If sizes[n+1] contains a larger value than >> on last >> n-th invocation, >> 77 * the collection will appear to have shrunk >> when >> iterated; if a >> 78 * smaller value then the collection will >> appear to >> have grown. >> 79 * When the last element of sizes is >> reached, the >> collection will >> 80 * appear size-fixed. >> 81 */ >> >> >> The link to the bug: >> >> http://bugs.sun.com/____bugdatabase/view_bug.do?bug_____id=7121314 >> >> >> > > >> The link to the start of the thread: >> >> http://mail.openjdk.java.net/____pipermail/core-libs-dev/2012-____March/009512.html >> >> >> > > >> >> Good idea, to repeat these links. >> >> -Ulf >> >> >> >> >> -- >> Best Regards, >> Sean Chou >> >> >> >> /* >> * Copyright (c) 2012, Oracle and/or its affiliates. All rights >> reserved. >> * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. >> * >> * This code is free software; you can redistribute it and/or >> modify it >> * under the terms of the GNU General Public License version 2 >> only, as >> * published by the Free Software Foundation. >> * >> * This code is distributed in the hope that it will be useful, but >> WITHOUT >> * ANY WARRANTY; without even the implied warranty of >> MERCHANTABILITY or >> * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public >> License >> * version 2 for more details (a copy is included in the LICENSE >> file that >> * accompanied this code). >> * >> * You should have received a copy of the GNU General Public >> License version >> * 2 along with this work; if not, write to the Free Software >> Foundation, >> * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. >> * >> * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA >> 94065 USA >> * or visit www.oracle.com if you need >> additional information or have any >> * questions. >> */ >> >> /* >> * @test >> * @bug 7121314 >> * @summary AbstractCollection.toArray(T[]__) doesn't return the >> given array >> * in concurrent modification. >> * @author Ulf Zibis, David Holmes >> */ >> >> import java.util.AbstractCollection; >> import java.util.Arrays; >> import java.util.Iterator; >> >> public class ToArrayTest { >> >> static class TestCollection extends AbstractCollection { >> >> private final E[] elements; >> >> >> private int[] sizes; >> private int nextSize; >> >> public TestCollection(E[] elements) { >> this.elements = elements; >> setSizeSequence(new int[]{elements.length}); >> } >> >> /* >> * Sets the values that size() will return on each use. >> The next >> >> * call to size will return sizes[0], then sizes[1] etc. >> This >> * allows us to emulate a concurrent change to the >> contents of >> * the collection without having to perform concurrent >> changes. >> * If sizes[n+1] contains a larger value, the collection >> will appear to >> * have shrunk when iterated; if a smaller value then the >> * collection will appear to have grown when iterated >> >> */ >> void setSizeSequence(int... sizes) { >> this.sizes = sizes; >> nextSize = 0; >> } >> >> /* can change collection's size after each invocation */ >> >> @Override >> public int size() { >> return sizes[nextSize == sizes.length-1 ? nextSize : >> nextSize++]; >> } >> >> @Override >> public Iterator iterator() { >> return new Iterator() { >> >> int pos = 0; >> public boolean hasNext() { >> return pos < sizes[nextSize]; >> } >> public E next() { >> return elements[pos++]; >> } >> public void remove() { >> throw new UnsupportedOperationException(__"Not >> supported yet."); >> } >> }; >> } >> } >> >> static final Object[] OBJECTS = { new Object(), new Object(), new >> Object() }; >> static final TestCollection CANDIDATE = new >> TestCollection(__OBJECTS); >> static final int CAP = OBJECTS.length; // capacity of the >> CANDIDATE >> static final int LAST = CAP - 1; // last possible array index >> Object[] a; >> Object[] res; >> >> int last() { return a.length - 1; } >> >> protected void test() throws Throwable { >> // Check array type conversion >> res = new TestCollection<>(new Object[]{"1", "2"}).toArray(new >> String[0]); >> check(res instanceof String[]); >> check(res.length == 2); >> check(res[1] == "2"); >> >> // Check incompatible type of target array >> try { >> res = CANDIDATE.toArray(new String[CAP]); >> check(false); >> } catch (Throwable t) { >> check(t instanceof ArrayStoreException); >> } >> >> // Check more elements than a.length >> a = new Object[CAP-1]; // appears too small >> res = CANDIDATE.toArray(a); >> check(res != a); >> check(res[LAST] != null); >> >> // Check equal elements as a.length >> a = new Object[CAP]; // appears to match >> res = CANDIDATE.toArray(a); >> check(res == a); >> check(res[last()] != null); >> >> // Check equal elements as a.length >> a = new Object[CAP+1]; // appears too big >> res = CANDIDATE.toArray(a); >> check(res == a); >> check(res[last()] == null); >> >> // Check less elements than expected, but more than a.length >> a = new Object[CAP-2]; // appears too small >> CANDIDATE.setSizeSequence(CAP, CAP-1); >> res = CANDIDATE.toArray(a); >> check(res != a); >> check(res.length == CAP-1); >> check(res[LAST-1] != null); >> >> // Check less elements than expected, but equal as a.length >> a = Arrays.copyOf(OBJECTS, CAP); // appears to match >> CANDIDATE.setSizeSequence(CAP, CAP-1); >> res = CANDIDATE.toArray(a); >> check(res == a); >> check(res[last()] == null); >> >> // Check more elements than expected and more than a.length >> a = new Object[CAP-1]; // appears to match >> CANDIDATE.setSizeSequence(CAP-__1, CAP); >> res = CANDIDATE.toArray(a); >> check(res != a); >> check(res[LAST] != null); >> >> // Check more elements than expected, but equal as a.length >> a = new Object[CAP-1]; // appears to match >> CANDIDATE.setSizeSequence(CAP-__2, CAP-1); >> res = CANDIDATE.toArray(a); >> check(res == a); >> check(res[last()] != null); >> >> // Check more elements than expected, but less than a.length >> a = Arrays.copyOf(OBJECTS, CAP); // appears to match >> CANDIDATE.setSizeSequence(CAP-__2, CAP-1); >> res = CANDIDATE.toArray(a); >> check(res == a); >> check(res[last()] == null); >> >> test_7121314(); >> } >> >> /* >> * Major target of this testcase, bug 7121314. >> */ >> protected void test_7121314() throws Throwable { >> // Check equal elements as a.length, but less than expected >> a = new Object[CAP-1]; // appears too small >> CANDIDATE.setSizeSequence(CAP, CAP-1); >> res = CANDIDATE.toArray(a); >> check(res == a); >> check(res[last()] != null); >> >> // Check less elements than a.length and less than expected >> a = Arrays.copyOf(OBJECTS, CAP-1); // appears too small >> CANDIDATE.setSizeSequence(CAP, CAP-2); >> res = CANDIDATE.toArray(a); >> check(res == a); >> check(res[last()] == null); >> >> } >> >> >> public static void main(String[] args) throws Throwable { >> ToArrayTest testcase = new ToArrayTest(); >> try { testcase.test(); } catch (Throwable t) { unexpected(t); } >> >> System.out.printf("%nPassed = %d, failed = %d%n%n", passed, >> failed); >> if (failed > 0) throw new Exception("Some tests failed"); >> } >> >> private static volatile int passed = 0, failed = 0; >> private static void pass() { passed++; } >> private static void fail() { failed++; Thread.dumpStack(); } >> private static void fail(String msg) { System.out.println(msg); >> fail(); } >> private static void unexpected(Throwable t) { failed++; >> t.printStackTrace(); } >> >> static void check(boolean cond) { if (cond) pass(); else fail(); } >> static void equals(Object x, Object y) { >> >> if (x == null ? y == null : x.equals(y)) pass(); >> else {System.out.println(x + " not equal to " + y); fail(); }} >> >> } >> >> >> >> >> >> -- >> Best Regards, >> Sean Chou >> > -- Yours Charles From youdwei at linux.vnet.ibm.com Mon Apr 9 07:01:00 2012 From: youdwei at linux.vnet.ibm.com (Deven You) Date: Mon, 09 Apr 2012 15:01:00 +0800 Subject: New constructor in sun.tools.java.ClassPath builds a path using File.separator instead of File.pathSeparatorChar Message-ID: <4F82892C.7090709@linux.vnet.ibm.com> Hi core-libs-devs, There are 2 sun bugs related to this issue: http://bugs.sun.com/view_bug.do;jsessionid=663548580556affffffffe43f50bf92c75b5?bug_id=6695325^and http://bugs.sun.com/view_bug.do;jsessionid=663548580556affffffffe43f50bf92c75b5?bug_id=6610897^ The basic problem is that the new constructor public ClassPath(String[] patharray) which calls new private method private void init(String}[] patharray) The init method builds a pathstr using File.separator instead of File.pathSeparatorChar. Since it is really a bug and the fix is simple, I have made a patch[1] for this issue and a test case[2] to recreated this issue. The patch just uses File.pathSeparatorChar to replace File.separator. Please anyone can review it? Thanks a lot! [1] http://cr.openjdk.java.net/~youdwei/classpath/webrev.00/ [2] http://cr.openjdk.java.net/~youdwei/classpath/test/webrev.00/ -- Best Regards, Deven From zhouyx at linux.vnet.ibm.com Mon Apr 9 07:53:43 2012 From: zhouyx at linux.vnet.ibm.com (Sean Chou) Date: Mon, 9 Apr 2012 15:53:43 +0800 Subject: Replace the static error string in ZIP_Put_In_Cache0 with on stack memory Message-ID: Hi all, I would like to suggest to replace the static error string in ZIP_Put_In_Cache0 with on stack memory. Because it takes more time to modify a string than an int typed error number, it opens a window larger than int typed error number and might bring in race in multi-thread user cases. I wrote a simple c testcase for JNI call "ZIP_Open", which shows that it is easy to cause a race. In my machine, the testcase fails several time with only 2 threads. The testcase is attached, it needs jdk shared libs to compile and run. compile: gcc test_zip_open.c -I j2sdk-image/include/ -I j2sdk-image/include/linux/ j2sdk-image/jre/lib/i386/lib*.so j2sdk-image/jre/lib/i386/client/libjvm.so -pthread run: please include the libs in LD_LIBRARY_PATH , it is easy to catch the error case with grep //// Following is a simple output from my tests: zhouyx at zhouyx-workstation:/media/data/GiveBack/OJDK-482/i386$ ./a.out 1 | grep //// ////////////////////////// method1 pmsg :Permission denied zhouyx at zhouyx-workstation:/media/data/GiveBack/OJDK-482/i386$ ./a.out 10 | grep //// //////////////////////// method2 pmsg :No such file or directory //////////////////////// method2 pmsg :No such file or directory //////////////////////// method2 pmsg :No such file or directory zhouyx at zhouyx-workstation:/media/data/GiveBack/OJDK-482/i386$ ./a.out 100 | grep //// ////////////////////////// method1 pmsg :Permission denied ////////////////////////// method1 pmsg :Permission denied //////////////////////// method2 pmsg :No such file or directory //////////////////////// method2 pmsg :No such file or directory ////////////////////////// method1 pmsg :Permission denied The modification is here: http://cr.openjdk.java.net/~zhouyx/OJDK-482/webrev.00/ . It puts the error string on stack and return a dup one. Please take a look and give some comments, thanks. -- Best Regards, Sean Chou From Alan.Bateman at oracle.com Mon Apr 9 09:03:56 2012 From: Alan.Bateman at oracle.com (Alan Bateman) Date: Mon, 09 Apr 2012 10:03:56 +0100 Subject: New constructor in sun.tools.java.ClassPath builds a path using File.separator instead of File.pathSeparatorChar In-Reply-To: <4F82892C.7090709@linux.vnet.ibm.com> References: <4F82892C.7090709@linux.vnet.ibm.com> Message-ID: <4F82A5FC.7080601@oracle.com> On 09/04/2012 08:01, Deven You wrote: > Hi core-libs-devs, > > There are 2 sun bugs related to this issue: > > http://bugs.sun.com/view_bug.do;jsessionid=663548580556affffffffe43f50bf92c75b5?bug_id=6695325^and > > http://bugs.sun.com/view_bug.do;jsessionid=663548580556affffffffe43f50bf92c75b5?bug_id=6610897^ > > > The basic problem is that the new constructor > > public ClassPath(String[] patharray) which calls new private method > > private void init(String}[] patharray) > > The init method builds a pathstr using File.separator instead of > File.pathSeparatorChar. > > Since it is really a bug and the fix is simple, I have made a patch[1] > for this issue and a test case[2] to recreated this issue. > > The patch just uses File.pathSeparatorChar to replace File.separator. > > Please anyone can review it? No issue with the proposed change but I'm curious how you ran into this. Is it with rmic or something else? -Alan From youdwei at linux.vnet.ibm.com Mon Apr 9 09:32:58 2012 From: youdwei at linux.vnet.ibm.com (Deven You) Date: Mon, 09 Apr 2012 17:32:58 +0800 Subject: New constructor in sun.tools.java.ClassPath builds a path using File.separator instead of File.pathSeparatorChar In-Reply-To: <4F82A5FC.7080601@oracle.com> References: <4F82892C.7090709@linux.vnet.ibm.com> <4F82A5FC.7080601@oracle.com> Message-ID: <4F82ACCA.800@linux.vnet.ibm.com> On 04/09/2012 05:03 PM, Alan Bateman wrote: > On 09/04/2012 08:01, Deven You wrote: >> Hi core-libs-devs, >> >> There are 2 sun bugs related to this issue: >> >> http://bugs.sun.com/view_bug.do;jsessionid=663548580556affffffffe43f50bf92c75b5?bug_id=6695325^and >> >> http://bugs.sun.com/view_bug.do;jsessionid=663548580556affffffffe43f50bf92c75b5?bug_id=6610897^ >> >> >> The basic problem is that the new constructor >> >> public ClassPath(String[] patharray) which calls new private method >> >> private void init(String}[] patharray) >> >> The init method builds a pathstr using File.separator instead of >> File.pathSeparatorChar. >> >> Since it is really a bug and the fix is simple, I have made a >> patch[1] for this issue and a test case[2] to recreated this issue. >> >> The patch just uses File.pathSeparatorChar to replace File.separator. >> >> Please anyone can review it? > No issue with the proposed change but I'm curious how you ran into > this. Is it with rmic or something else? > > -Alan > Hi Alan, The issue is reported by one of our test team which maintains a set of ORB test cases. Thanks a lot! -- Best Regards, Deven From Alan.Bateman at oracle.com Mon Apr 9 10:01:05 2012 From: Alan.Bateman at oracle.com (Alan Bateman) Date: Mon, 09 Apr 2012 11:01:05 +0100 Subject: Replace the static error string in ZIP_Put_In_Cache0 with on stack memory In-Reply-To: References: Message-ID: <4F82B361.4080806@oracle.com> On 09/04/2012 08:53, Sean Chou wrote: > Hi all, > > I would like to suggest to replace the static error string in > ZIP_Put_In_Cache0 with on stack memory. > > : > > > The modification is here: > http://cr.openjdk.java.net/~zhouyx/OJDK-482/webrev.00/ . > Good catch, this one had probably been there for a long time but doesn't seem to have been noticed (perhaps because it should be rare for 2+ threads to attempt to open malformed zip files at around the same time). The changes in the webrev look okay to me. Minor nit in zip_util.c at L847 where there should be a space in "if(". In ZipFile.c then another choice would be to add the free after ThrowZipException(env,msg). Where you have it is okay too but probably should be split over two lines to be consistent. I assume that Neil or Charles will push this for you. I've created a bug for it: 7159982: ZipFile uses static for error message when malformed zip file encountered Regards, Alan. From joe.darcy at oracle.com Mon Apr 9 16:44:22 2012 From: joe.darcy at oracle.com (Joe Darcy) Date: Mon, 09 Apr 2012 09:44:22 -0700 Subject: Request for review : 7121314 : Behavior mismatch between AbstractCollection.toArray(T[] ) and its spec In-Reply-To: <4F8241FD.30407@linux.vnet.ibm.com> References: <4F5FD9E2.3060805@gmx.de> <4F61C3F5.2030607@gmx.de> <4F6A2682.7070808@gmx.de> <4F6BA03C.5010906@gmx.de> <4F6CE686.9060206@gmx.de> <4F729B0F.30803@gmx.de> <4F72A1B5.4090209@oracle.com> <4F735D1B.3010007@gmx.de> <4F73AE95.8070900@oracle.com> <4F7791A9.2000200@gmx.de> <4F77CAC7.2040709@oracle.com> <4F7854A3.4090406@oracle.com> <4F8241FD.30407@linux.vnet.i! bm.com> Message-ID: <4F8311E6.8050408@oracle.com> The "Contributed-by:" information has to be email addresses: http://openjdk.java.net/guide/producingChangeset.html HTH, -Joe On 04/08/2012 06:57 PM, Charles Lee wrote: > Hi guys, > > I am trying to push the changeset to the gate, but no matter how I > change the Contributed-by list, I always get: > > /searching for changes > remote: adding changesets > remote: adding manifests > remote: adding file changes > remote: added 1 changesets with 2 changes to 2 files > remote: [jcheck a54aa58bfef9 2012-02-26 07:41 -0800] > remote: > remote: > Changeset: 5201:c8ef92791b47 > remote: > Author: littlee > remote: > Date: 2012-04-09 09:51 > remote: > > remote: > 7121314: Behavior mismatch between > AbstractCollection.toArray(T[] ) and its spec > remote: > Reviewed-by: dholmes, mduigou > remote: > Contributed-by: Sean Zhou, Ulf Zibis, David Holmes > remote: > remote: Invalid contributor attribution/ > > > I have tried: > a. name pattern > b. name, name, name > c. zhouyx, dhomes, Ulf Zibis > > Does anybody have some experience on this? > > On 04/01/2012 09:14 PM, David Holmes wrote: >> Thanks Sean. I'd say this is done. >> >> David >> >> On 1/04/2012 7:24 PM, Sean Chou wrote: >>> Hi David, >>> >>> I made the new webrev with your modified testcase: >>> http://cr.openjdk.java.net/~zhouyx/7121314/webrev.04/ . >>> >>> >>> The link to the bug: >>> http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=7121314 >>> The link to the start of the thread: >>> http://mail.openjdk.java.net/pipermail/core-libs-dev/2012-March/009512.html >>> >>> >>> >>> On Sun, Apr 1, 2012 at 11:25 AM, David Holmes >> > wrote: >>> >>> Simplified testcase below. >>> >>> Let's finalise this please. >>> >>> Thanks, >>> David >>> >>> >>> On 1/04/2012 1:08 PM, Sean Chou wrote: >>> >>> Hi Ulf, >>> >>> This is a regression testcase, there is no performance >>> issue or >>> future refactoring. >>> Please wait for David's comments. >>> >>> On Sun, Apr 1, 2012 at 7:22 AM, Ulf Zibis >> >>> >> wrote: >>> >>> Hi Sean, >>> >>> thanks for your effort. >>> >>> Am 31.03.2012 11:43, schrieb Sean Chou: >>> >>> Hi David and Ulf, >>> >>> The new webrev is at: >>> http://cr.openjdk.java.net/~____zhouyx/7121314/webrev.03/ >>> >>> >> > >>> >> >>> >>> >> >> . >>> >>> >>> About the fix, I remained the previous one. >>> About the testcase, I merged the 3 files into one. >>> During merging, there are 2 modifications: >>> 1. I added static modifier to the 3 classes, which are >>> enclosed >>> by class ToArrayTest; >>> >>> You do not need the indirection via main()...run()...test() >>> if you >>> have all in 1 file. This was only necessary to feature a >>> general >>> usability of InfraStructure. You can go back to David's 1 + >>> 1 nested >>> class approach replacing TConcurrentHashMapX by >>> TestCollection and >>> maybe rename realMain() to test(). >>> Additionally, loading 4 classes for 1 test would have some >>> performance impact on the test run, which could be avoided. >>> >>> >>> 2. I removed field TestCollection.fixedSize, which is >>> never read >>> after Ulf fixed the bug in testcase. >>> >>> This field would serve to "reset" the TestCollection to >>> fixed >>> default size without the need of new instantiation for >>> later >>> refactoring or testcase addition. >>> >>> As just discussed before, the doc for setSizeSequence() >>> could be >>> little more specific: >>> 71 /* >>> 72 * Sets the values that size() will return on >>> each use. >>> The first >>> 73 * call to size will return sizes[0], then >>> sizes[1] >>> etc. This >>> 74 * allows us to emulate a concurrent change >>> to the >>> contents of >>> 75 * the collection without having to perform >>> concurrent >>> changes. >>> 76 * If sizes[n+1] contains a larger value than >>> on last >>> n-th invocation, >>> 77 * the collection will appear to have >>> shrunk when >>> iterated; if a >>> 78 * smaller value then the collection will >>> appear to >>> have grown. >>> 79 * When the last element of sizes is >>> reached, the >>> collection will >>> 80 * appear size-fixed. >>> 81 */ >>> >>> >>> The link to the bug: >>> >>> http://bugs.sun.com/____bugdatabase/view_bug.do?bug_____id=7121314 >>> >>> >>> >> > >>> The link to the start of the thread: >>> >>> http://mail.openjdk.java.net/____pipermail/core-libs-dev/2012-____March/009512.html >>> >>> >>> >>> >> >>> > >>> >>> >>> Good idea, to repeat these links. >>> >>> -Ulf >>> >>> >>> >>> >>> -- >>> Best Regards, >>> Sean Chou >>> >>> >>> >>> /* >>> * Copyright (c) 2012, Oracle and/or its affiliates. All rights >>> reserved. >>> * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. >>> * >>> * This code is free software; you can redistribute it and/or >>> modify it >>> * under the terms of the GNU General Public License version 2 >>> only, as >>> * published by the Free Software Foundation. >>> * >>> * This code is distributed in the hope that it will be useful, >>> but >>> WITHOUT >>> * ANY WARRANTY; without even the implied warranty of >>> MERCHANTABILITY or >>> * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public >>> License >>> * version 2 for more details (a copy is included in the LICENSE >>> file that >>> * accompanied this code). >>> * >>> * You should have received a copy of the GNU General Public >>> License version >>> * 2 along with this work; if not, write to the Free Software >>> Foundation, >>> * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. >>> * >>> * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA >>> 94065 USA >>> * or visit www.oracle.com if you need >>> additional information or have any >>> * questions. >>> */ >>> >>> /* >>> * @test >>> * @bug 7121314 >>> * @summary AbstractCollection.toArray(T[]__) doesn't return the >>> given array >>> * in concurrent modification. >>> * @author Ulf Zibis, David Holmes >>> */ >>> >>> import java.util.AbstractCollection; >>> import java.util.Arrays; >>> import java.util.Iterator; >>> >>> public class ToArrayTest { >>> >>> static class TestCollection extends AbstractCollection { >>> >>> private final E[] elements; >>> >>> >>> private int[] sizes; >>> private int nextSize; >>> >>> public TestCollection(E[] elements) { >>> this.elements = elements; >>> setSizeSequence(new int[]{elements.length}); >>> } >>> >>> /* >>> * Sets the values that size() will return on each use. >>> The next >>> >>> * call to size will return sizes[0], then sizes[1] etc. >>> This >>> * allows us to emulate a concurrent change to the >>> contents of >>> * the collection without having to perform concurrent >>> changes. >>> * If sizes[n+1] contains a larger value, the collection >>> will appear to >>> * have shrunk when iterated; if a smaller value then the >>> * collection will appear to have grown when iterated >>> >>> */ >>> void setSizeSequence(int... sizes) { >>> this.sizes = sizes; >>> nextSize = 0; >>> } >>> >>> /* can change collection's size after each invocation */ >>> >>> @Override >>> public int size() { >>> return sizes[nextSize == sizes.length-1 ? nextSize : >>> nextSize++]; >>> } >>> >>> @Override >>> public Iterator iterator() { >>> return new Iterator() { >>> >>> int pos = 0; >>> public boolean hasNext() { >>> return pos < sizes[nextSize]; >>> } >>> public E next() { >>> return elements[pos++]; >>> } >>> public void remove() { >>> throw new UnsupportedOperationException(__"Not >>> supported yet."); >>> } >>> }; >>> } >>> } >>> >>> static final Object[] OBJECTS = { new Object(), new Object(), new >>> Object() }; >>> static final TestCollection CANDIDATE = new >>> TestCollection(__OBJECTS); >>> static final int CAP = OBJECTS.length; // capacity of the >>> CANDIDATE >>> static final int LAST = CAP - 1; // last possible array index >>> Object[] a; >>> Object[] res; >>> >>> int last() { return a.length - 1; } >>> >>> protected void test() throws Throwable { >>> // Check array type conversion >>> res = new TestCollection<>(new Object[]{"1", "2"}).toArray(new >>> String[0]); >>> check(res instanceof String[]); >>> check(res.length == 2); >>> check(res[1] == "2"); >>> >>> // Check incompatible type of target array >>> try { >>> res = CANDIDATE.toArray(new String[CAP]); >>> check(false); >>> } catch (Throwable t) { >>> check(t instanceof ArrayStoreException); >>> } >>> >>> // Check more elements than a.length >>> a = new Object[CAP-1]; // appears too small >>> res = CANDIDATE.toArray(a); >>> check(res != a); >>> check(res[LAST] != null); >>> >>> // Check equal elements as a.length >>> a = new Object[CAP]; // appears to match >>> res = CANDIDATE.toArray(a); >>> check(res == a); >>> check(res[last()] != null); >>> >>> // Check equal elements as a.length >>> a = new Object[CAP+1]; // appears too big >>> res = CANDIDATE.toArray(a); >>> check(res == a); >>> check(res[last()] == null); >>> >>> // Check less elements than expected, but more than a.length >>> a = new Object[CAP-2]; // appears too small >>> CANDIDATE.setSizeSequence(CAP, CAP-1); >>> res = CANDIDATE.toArray(a); >>> check(res != a); >>> check(res.length == CAP-1); >>> check(res[LAST-1] != null); >>> >>> // Check less elements than expected, but equal as a.length >>> a = Arrays.copyOf(OBJECTS, CAP); // appears to match >>> CANDIDATE.setSizeSequence(CAP, CAP-1); >>> res = CANDIDATE.toArray(a); >>> check(res == a); >>> check(res[last()] == null); >>> >>> // Check more elements than expected and more than a.length >>> a = new Object[CAP-1]; // appears to match >>> CANDIDATE.setSizeSequence(CAP-__1, CAP); >>> res = CANDIDATE.toArray(a); >>> check(res != a); >>> check(res[LAST] != null); >>> >>> // Check more elements than expected, but equal as a.length >>> a = new Object[CAP-1]; // appears to match >>> CANDIDATE.setSizeSequence(CAP-__2, CAP-1); >>> res = CANDIDATE.toArray(a); >>> check(res == a); >>> check(res[last()] != null); >>> >>> // Check more elements than expected, but less than a.length >>> a = Arrays.copyOf(OBJECTS, CAP); // appears to match >>> CANDIDATE.setSizeSequence(CAP-__2, CAP-1); >>> res = CANDIDATE.toArray(a); >>> check(res == a); >>> check(res[last()] == null); >>> >>> test_7121314(); >>> } >>> >>> /* >>> * Major target of this testcase, bug 7121314. >>> */ >>> protected void test_7121314() throws Throwable { >>> // Check equal elements as a.length, but less than expected >>> a = new Object[CAP-1]; // appears too small >>> CANDIDATE.setSizeSequence(CAP, CAP-1); >>> res = CANDIDATE.toArray(a); >>> check(res == a); >>> check(res[last()] != null); >>> >>> // Check less elements than a.length and less than expected >>> a = Arrays.copyOf(OBJECTS, CAP-1); // appears too small >>> CANDIDATE.setSizeSequence(CAP, CAP-2); >>> res = CANDIDATE.toArray(a); >>> check(res == a); >>> check(res[last()] == null); >>> >>> } >>> >>> >>> public static void main(String[] args) throws Throwable { >>> ToArrayTest testcase = new ToArrayTest(); >>> try { testcase.test(); } catch (Throwable t) { unexpected(t); } >>> >>> System.out.printf("%nPassed = %d, failed = %d%n%n", passed, >>> failed); >>> if (failed > 0) throw new Exception("Some tests failed"); >>> } >>> >>> private static volatile int passed = 0, failed = 0; >>> private static void pass() { passed++; } >>> private static void fail() { failed++; Thread.dumpStack(); } >>> private static void fail(String msg) { System.out.println(msg); >>> fail(); } >>> private static void unexpected(Throwable t) { failed++; >>> t.printStackTrace(); } >>> >>> static void check(boolean cond) { if (cond) pass(); else >>> fail(); } >>> static void equals(Object x, Object y) { >>> >>> if (x == null ? y == null : x.equals(y)) pass(); >>> else {System.out.println(x + " not equal to " + y); fail(); }} >>> >>> } >>> >>> >>> >>> >>> >>> -- >>> Best Regards, >>> Sean Chou >>> >> > > From kumar.x.srinivasan at oracle.com Mon Apr 9 23:25:13 2012 From: kumar.x.srinivasan at oracle.com (kumar.x.srinivasan at oracle.com) Date: Mon, 09 Apr 2012 23:25:13 +0000 Subject: hg: jdk8/tl/langtools: 7156633: (javac) incorrect errors when parsing variable declaration in block statements. Message-ID: <20120409232517.B408547F92@hg.openjdk.java.net> Changeset: 9c429f38ca7e Author: ksrini Date: 2012-04-09 14:31 -0700 URL: http://hg.openjdk.java.net/jdk8/tl/langtools/rev/9c429f38ca7e 7156633: (javac) incorrect errors when parsing variable declaration in block statements. Reviewed-by: jjg Contributed-by: jan.lahoda at oracle.com ! src/share/classes/com/sun/tools/javac/parser/JavacParser.java ! src/share/classes/com/sun/tools/javac/resources/compiler.properties + test/tools/javac/diags/examples/IllegalStartOfStmt.java + test/tools/javac/diags/examples/NotAllowedClass.java + test/tools/javac/diags/examples/NotAllowedVariable.java ! test/tools/javac/parser/JavacParserTest.java From littlee at linux.vnet.ibm.com Tue Apr 10 02:19:00 2012 From: littlee at linux.vnet.ibm.com (littlee at linux.vnet.ibm.com) Date: Tue, 10 Apr 2012 02:19:00 +0000 Subject: hg: jdk8/tl/jdk: 7121314: Behavior mismatch between AbstractCollection.toArray(T[] ) and its spec Message-ID: <20120410021917.ED3D847F99@hg.openjdk.java.net> Changeset: e06ea0dd9207 Author: littlee Date: 2012-04-10 10:17 +0800 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/e06ea0dd9207 7121314: Behavior mismatch between AbstractCollection.toArray(T[] ) and its spec Reviewed-by: dholmes, mduigou Contributed-by: Sean Zhou , Ulf Zibis , David Holmes ! src/share/classes/java/util/AbstractCollection.java + test/java/util/AbstractCollection/ToArrayTest.java From weijun.wang at oracle.com Tue Apr 10 04:15:43 2012 From: weijun.wang at oracle.com (weijun.wang at oracle.com) Date: Tue, 10 Apr 2012 04:15:43 +0000 Subject: hg: jdk8/tl/jdk: 7158329: NPE in sun.security.krb5.Credentials.acquireDefaultCreds() Message-ID: <20120410041552.F0B8E47F9B@hg.openjdk.java.net> Changeset: 1ffe2565ec06 Author: weijun Date: 2012-04-10 12:15 +0800 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/1ffe2565ec06 7158329: NPE in sun.security.krb5.Credentials.acquireDefaultCreds() Reviewed-by: valeriep, jjg ! src/share/classes/sun/security/krb5/Credentials.java + test/sun/security/krb5/ccache/EmptyCC.java From littlee at linux.vnet.ibm.com Tue Apr 10 06:03:54 2012 From: littlee at linux.vnet.ibm.com (Charles Lee) Date: Tue, 10 Apr 2012 14:03:54 +0800 Subject: Request for review : 7121314 : Behavior mismatch between AbstractCollection.toArray(T[] ) and its spec In-Reply-To: References: <4F5FD9E2.3060805@gmx.de> <4F61C3F5.2030607@gmx.de> <4F6A2682.7070808@gmx.de> <4F6BA03C.5010906@gmx.de> <4F6CE686.9060206@gmx.de> <4F729B0F.30803@gmx.de> <4F72A1B5.4090209@oracle.com> <4F735D1B.3010007@gmx.de> <4F73AE95.8070900@oracle.com> <4F7791A9.2000200@gmx.de> <4F77CAC7.2040709@oracle.com> Message-ID: <4F83CD4A.5020400@linux.vnet.ibm.com> Hi Sean, The the patch has been committed @ Changeset: e06ea0dd9207 Author: littlee Date: 2012-04-10 10:17 +0800 URL:http://hg.openjdk.java.net/jdk8/tl/jdk/rev/e06ea0dd9207 7121314: Behavior mismatch between AbstractCollection.toArray(T[] ) and its spec Reviewed-by: dholmes, mduigou Contributed-by: Sean Zhou, Ulf Zibis, David Holmes ! src/share/classes/java/util/AbstractCollection.java + test/java/util/AbstractCollection/ToArrayTest.java Please verified it. Thank you all for contributing and reviewing this change. Thank you Mike and Joe for helping my committing this patch. On 04/01/2012 05:24 PM, Sean Chou wrote: > Hi David, > > I made the new webrev with your modified testcase: > http://cr.openjdk.java.net/~zhouyx/7121314/webrev.04/ . > > > The link to the bug: > http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=7121314 > The link to the start of the thread: > > http://mail.openjdk.java.net/pipermail/core-libs-dev/2012-March/009512.html > > > On Sun, Apr 1, 2012 at 11:25 AM, David Holmeswrote: > >> Simplified testcase below. >> >> Let's finalise this please. >> >> Thanks, >> David >> >> >> On 1/04/2012 1:08 PM, Sean Chou wrote: >> >>> Hi Ulf, >>> >>> This is a regression testcase, there is no performance issue or >>> future refactoring. >>> Please wait for David's comments. >>> >>> On Sun, Apr 1, 2012 at 7:22 AM, Ulf Zibis>> > wrote: >>> >>> Hi Sean, >>> >>> thanks for your effort. >>> >>> Am 31.03.2012 11:43, schrieb Sean Chou: >>> >>> Hi David and Ulf, >>> >>> The new webrev is at: >>> http://cr.openjdk.java.net/~__**zhouyx/7121314/webrev.03/ >>> >>> >> >>> >> >>> . >>> >>> >>> About the fix, I remained the previous one. >>> About the testcase, I merged the 3 files into one. >>> During merging, there are 2 modifications: >>> 1. I added static modifier to the 3 classes, which are enclosed >>> by class ToArrayTest; >>> >>> You do not need the indirection via main()...run()...test() if you >>> have all in 1 file. This was only necessary to feature a general >>> usability of InfraStructure. You can go back to David's 1 + 1 nested >>> class approach replacing TConcurrentHashMapX by TestCollection and >>> maybe rename realMain() to test(). >>> Additionally, loading 4 classes for 1 test would have some >>> performance impact on the test run, which could be avoided. >>> >>> >>> 2. I removed field TestCollection.fixedSize, which is never read >>> after Ulf fixed the bug in testcase. >>> >>> This field would serve to "reset" the TestCollection to fixed >>> default size without the need of new instantiation for later >>> refactoring or testcase addition. >>> >>> As just discussed before, the doc for setSizeSequence() could be >>> little more specific: >>> 71 /* >>> 72 * Sets the values that size() will return on each use. >>> The first >>> 73 * call to size will return sizes[0], then sizes[1] >>> etc. This >>> 74 * allows us to emulate a concurrent change to the >>> contents of >>> 75 * the collection without having to perform concurrent >>> changes. >>> 76 * If sizes[n+1] contains a larger value than on last >>> n-th invocation, >>> 77 * the collection will appear to have shrunk when >>> iterated; if a >>> 78 * smaller value then the collection will appear to >>> have grown. >>> 79 * When the last element of sizes is reached, the >>> collection will >>> 80 * appear size-fixed. >>> 81 */ >>> >>> >>> The link to the bug: >>> http://bugs.sun.com/__**bugdatabase/view_bug.do?bug___**id=7121314 >>> >>> >>> The link to the start of the thread: >>> http://mail.openjdk.java.net/_**_pipermail/core-libs-dev/2012-** >>> __March/009512.html >>> >>> >> March/009512.html >>> Good idea, to repeat these links. >>> >>> -Ulf >>> >>> >>> >>> >>> -- >>> Best Regards, >>> Sean Chou >>> >>> >> /* >> * Copyright (c) 2012, Oracle and/or its affiliates. All rights reserved. >> * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. >> * >> * This code is free software; you can redistribute it and/or modify it >> * under the terms of the GNU General Public License version 2 only, as >> * published by the Free Software Foundation. >> * >> * This code is distributed in the hope that it will be useful, but WITHOUT >> * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or >> * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License >> * version 2 for more details (a copy is included in the LICENSE file that >> * accompanied this code). >> * >> * You should have received a copy of the GNU General Public License >> version >> * 2 along with this work; if not, write to the Free Software Foundation, >> * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. >> * >> * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA >> * or visit www.oracle.com if you need additional information or have any >> * questions. >> */ >> >> /* >> * @test >> * @bug 7121314 >> * @summary AbstractCollection.toArray(T[]**) doesn't return the given >> array >> * in concurrent modification. >> * @author Ulf Zibis, David Holmes >> */ >> >> import java.util.AbstractCollection; >> import java.util.Arrays; >> import java.util.Iterator; >> >> public class ToArrayTest { >> >> static class TestCollection extends AbstractCollection { >> >> private final E[] elements; >> >> >> private int[] sizes; >> private int nextSize; >> >> public TestCollection(E[] elements) { >> this.elements = elements; >> setSizeSequence(new int[]{elements.length}); >> } >> >> /* >> * Sets the values that size() will return on each use. The next >> >> * call to size will return sizes[0], then sizes[1] etc. This >> * allows us to emulate a concurrent change to the contents of >> * the collection without having to perform concurrent changes. >> * If sizes[n+1] contains a larger value, the collection will >> appear to >> * have shrunk when iterated; if a smaller value then the >> * collection will appear to have grown when iterated >> >> */ >> void setSizeSequence(int... sizes) { >> this.sizes = sizes; >> nextSize = 0; >> } >> >> /* can change collection's size after each invocation */ >> >> @Override >> public int size() { >> return sizes[nextSize == sizes.length-1 ? nextSize : >> nextSize++]; >> } >> >> @Override >> public Iterator iterator() { >> return new Iterator() { >> >> int pos = 0; >> public boolean hasNext() { >> return pos< sizes[nextSize]; >> } >> public E next() { >> return elements[pos++]; >> } >> public void remove() { >> throw new UnsupportedOperationException(**"Not >> supported yet."); >> } >> }; >> } >> } >> >> static final Object[] OBJECTS = { new Object(), new Object(), new >> Object() }; >> static final TestCollection CANDIDATE = new TestCollection(** >> OBJECTS); >> static final int CAP = OBJECTS.length; // capacity of the CANDIDATE >> static final int LAST = CAP - 1; // last possible array index >> Object[] a; >> Object[] res; >> >> int last() { return a.length - 1; } >> >> protected void test() throws Throwable { >> // Check array type conversion >> res = new TestCollection<>(new Object[]{"1", "2"}).toArray(new >> String[0]); >> check(res instanceof String[]); >> check(res.length == 2); >> check(res[1] == "2"); >> >> // Check incompatible type of target array >> try { >> res = CANDIDATE.toArray(new String[CAP]); >> check(false); >> } catch (Throwable t) { >> check(t instanceof ArrayStoreException); >> } >> >> // Check more elements than a.length >> a = new Object[CAP-1]; // appears too small >> res = CANDIDATE.toArray(a); >> check(res != a); >> check(res[LAST] != null); >> >> // Check equal elements as a.length >> a = new Object[CAP]; // appears to match >> res = CANDIDATE.toArray(a); >> check(res == a); >> check(res[last()] != null); >> >> // Check equal elements as a.length >> a = new Object[CAP+1]; // appears too big >> res = CANDIDATE.toArray(a); >> check(res == a); >> check(res[last()] == null); >> >> // Check less elements than expected, but more than a.length >> a = new Object[CAP-2]; // appears too small >> CANDIDATE.setSizeSequence(CAP, CAP-1); >> res = CANDIDATE.toArray(a); >> check(res != a); >> check(res.length == CAP-1); >> check(res[LAST-1] != null); >> >> // Check less elements than expected, but equal as a.length >> a = Arrays.copyOf(OBJECTS, CAP); // appears to match >> CANDIDATE.setSizeSequence(CAP, CAP-1); >> res = CANDIDATE.toArray(a); >> check(res == a); >> check(res[last()] == null); >> >> // Check more elements than expected and more than a.length >> a = new Object[CAP-1]; // appears to match >> CANDIDATE.setSizeSequence(CAP-**1, CAP); >> res = CANDIDATE.toArray(a); >> check(res != a); >> check(res[LAST] != null); >> >> // Check more elements than expected, but equal as a.length >> a = new Object[CAP-1]; // appears to match >> CANDIDATE.setSizeSequence(CAP-**2, CAP-1); >> res = CANDIDATE.toArray(a); >> check(res == a); >> check(res[last()] != null); >> >> // Check more elements than expected, but less than a.length >> a = Arrays.copyOf(OBJECTS, CAP); // appears to match >> CANDIDATE.setSizeSequence(CAP-**2, CAP-1); >> res = CANDIDATE.toArray(a); >> check(res == a); >> check(res[last()] == null); >> >> test_7121314(); >> } >> >> /* >> * Major target of this testcase, bug 7121314. >> */ >> protected void test_7121314() throws Throwable { >> // Check equal elements as a.length, but less than expected >> a = new Object[CAP-1]; // appears too small >> CANDIDATE.setSizeSequence(CAP, CAP-1); >> res = CANDIDATE.toArray(a); >> check(res == a); >> check(res[last()] != null); >> >> // Check less elements than a.length and less than expected >> a = Arrays.copyOf(OBJECTS, CAP-1); // appears too small >> CANDIDATE.setSizeSequence(CAP, CAP-2); >> res = CANDIDATE.toArray(a); >> check(res == a); >> check(res[last()] == null); >> >> } >> >> >> public static void main(String[] args) throws Throwable { >> ToArrayTest testcase = new ToArrayTest(); >> try { testcase.test(); } catch (Throwable t) { unexpected(t); } >> >> System.out.printf("%nPassed = %d, failed = %d%n%n", passed, failed); >> if (failed> 0) throw new Exception("Some tests failed"); >> } >> >> private static volatile int passed = 0, failed = 0; >> private static void pass() { passed++; } >> private static void fail() { failed++; Thread.dumpStack(); } >> private static void fail(String msg) { System.out.println(msg); fail(); } >> private static void unexpected(Throwable t) { failed++; >> t.printStackTrace(); } >> >> static void check(boolean cond) { if (cond) pass(); else fail(); } >> static void equals(Object x, Object y) { >> >> if (x == null ? y == null : x.equals(y)) pass(); >> else {System.out.println(x + " not equal to " + y); fail(); }} >> >> } >> >> >> > -- Yours Charles From zhouyx at linux.vnet.ibm.com Tue Apr 10 07:10:53 2012 From: zhouyx at linux.vnet.ibm.com (Sean Chou) Date: Tue, 10 Apr 2012 15:10:53 +0800 Subject: Replace the static error string in ZIP_Put_In_Cache0 with on stack memory In-Reply-To: <4F82B361.4080806@oracle.com> References: <4F82B361.4080806@oracle.com> Message-ID: Hi Alan, I modified the patch according to your comments. The new webrev for cl is: http://cr.openjdk.java.net/~zhouyx/7159982/webrev.00/ And it is found that hotspot calls ZIP_Open through (*ZipOpen) in file classLoader.cpp .So I also made a patch for it and add hotspot-dev to cc list. File classLoader.cpp is the only one I have found calling ZIP_Open. The webrev for hotspot is: http://cr.openjdk.java.net/~zhouyx/7159982/webrev-hotspot.00/ To hotspot guys, We are trying to make the error path in ZIP_Open in src/share/native/java/util/zip/zip_util.c thread safe by changing the errbuf[] from static array to on stack array. This will cause the returned error string allocated from heap, which need to be freed. I checked the code and found only classLoader.cpp calls this function, so I made the above webrev. Please take a look. Link to the start of discussion: http://mail.openjdk.java.net/pipermail/core-libs-dev/2012-April/009766.html Link to the bug: http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=7159982 On Mon, Apr 9, 2012 at 6:01 PM, Alan Bateman wrote: > On 09/04/2012 08:53, Sean Chou wrote: > >> Hi all, >> >> I would like to suggest to replace the static error string in >> ZIP_Put_In_Cache0 with on stack memory. >> >> : >> >> >> The modification is here: >> http://cr.openjdk.java.net/~**zhouyx/OJDK-482/webrev.00/ . >> >> Good catch, this one had probably been there for a long time but doesn't > seem to have been noticed (perhaps because it should be rare for 2+ threads > to attempt to open malformed zip files at around the same time). > > The changes in the webrev look okay to me. Minor nit in zip_util.c at L847 > where there should be a space in "if(". In ZipFile.c then another choice > would be to add the free after ThrowZipException(env,msg). Where you have > it is okay too but probably should be split over two lines to be consistent. > > I assume that Neil or Charles will push this for you. I've created a bug > for it: > 7159982: ZipFile uses static for error message when malformed zip file > encountered > > Regards, > Alan. > -- Best Regards, Sean Chou From Alan.Bateman at oracle.com Tue Apr 10 08:10:42 2012 From: Alan.Bateman at oracle.com (Alan Bateman) Date: Tue, 10 Apr 2012 09:10:42 +0100 Subject: Replace the static error string in ZIP_Put_In_Cache0 with on stack memory In-Reply-To: References: <4F82B361.4080806@oracle.com> Message-ID: <4F83EB02.7050708@oracle.com> On 10/04/2012 08:10, Sean Chou wrote: > > And it is found that hotspot calls ZIP_Open through (*ZipOpen) in > file classLoader.cpp .So I also made a patch for it and add > hotspot-dev to cc list. > File classLoader.cpp is the only one I have found calling ZIP_Open. > > The webrev for hotspot is: > http://cr.openjdk.java.net/~zhouyx/7159982/webrev-hotspot.00/ > > > > To hotspot guys, > > We are trying to make the error path in ZIP_Open > in src/share/native/java/util/zip/zip_util.c thread safe by changing > the errbuf[] from static array to on stack array. This will cause the > returned error string allocated from heap, which need to be freed. I > checked the code and found only classLoader.cpp calls this function, > so I made the above webrev. Please take a look. > It's good that you spotted that this is called from the VM (I'd forgotten that). In that case things get a bit more complicated because the hotspot repository takes a different route into master and also goes into 7u releases too. I'll leave the HotSpot group to comment on your proposed change but I assume it will require adding JDK_Version::is_gte_jdk18x_version so that the JDK version can be tested before decided whether to free the error message. It will also require a sponsor as you cannot push changes to jdk8/tl/hotspot, all HotSpot changes require going through a build+test system (no direct pushes). -Alan From Alan.Bateman at oracle.com Tue Apr 10 08:12:12 2012 From: Alan.Bateman at oracle.com (Alan Bateman) Date: Tue, 10 Apr 2012 09:12:12 +0100 Subject: New constructor in sun.tools.java.ClassPath builds a path using File.separator instead of File.pathSeparatorChar In-Reply-To: <4F82ACCA.800@linux.vnet.ibm.com> References: <4F82892C.7090709@linux.vnet.ibm.com> <4F82A5FC.7080601@oracle.com> <4F82ACCA.800@linux.vnet.ibm.com> Message-ID: <4F83EB5C.7040205@oracle.com> On 09/04/2012 10:32, Deven You wrote: > : > > The issue is reported by one of our test team which maintains a set > of ORB test cases. Okay but I guess I'm still a bit curious as it's not obvious that rmic (or rmic --iiop) invokes toString, maybe this is a white box test or a test that is using sun.tools.java.*? -Alan. From staffan.larsen at oracle.com Tue Apr 10 09:30:09 2012 From: staffan.larsen at oracle.com (Staffan Larsen) Date: Tue, 10 Apr 2012 11:30:09 +0200 Subject: RFR(M): 7147848: [macosx] com.sun.management.UnixOperatingSystem uses hardcoded dummy values In-Reply-To: <694BFB79-DE09-492C-860E-F82DD5D3E5AF@oracle.com> References: <694BFB79-DE09-492C-860E-F82DD5D3E5AF@oracle.com> Message-ID: <8C8B239C-4A32-4B15-AB07-A18320E105BF@oracle.com> Any takers for this review? (added core-libs-dev as well) Thanks, /Staffan On 3 apr 2012, at 15:39, Staffan Larsen wrote: > Please review the following fix: > > webrev: http://cr.openjdk.java.net/~sla/7147848/webrev.00/ > bug: http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=7147848 > > This fix implements the missing functionality in UnixOperatingSystem for Mac OS X. Any feedback on the implementation is welcome as I am not very familiar with the APIs in Mac OS X. > > I have verified that the changes build on all platforms through JPRT. The correctness has been verified manually by looking in JConsole and running the tests in test/java/lang/management/OperatingSystemMXBean test/com/sun/management/OperatingSystemMXBean. > > Thanks, > /Staffan From staffan.larsen at oracle.com Tue Apr 10 13:36:25 2012 From: staffan.larsen at oracle.com (staffan.larsen at oracle.com) Date: Tue, 10 Apr 2012 13:36:25 +0000 Subject: hg: jdk8/tl/jdk: 7154809: JDI: update JDI/JDB debugee commandline option parsing Message-ID: <20120410133643.4A1BC47FA3@hg.openjdk.java.net> Changeset: fb52e8bd3718 Author: mgronlun Date: 2012-04-10 10:32 +0200 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/fb52e8bd3718 7154809: JDI: update JDI/JDB debugee commandline option parsing Summary: update debugee commandline parsing Reviewed-by: dcubed, dsamersoff, sla ! src/share/classes/com/sun/tools/example/debug/tty/VMConnection.java From jonathan.gibbons at oracle.com Tue Apr 10 14:50:15 2012 From: jonathan.gibbons at oracle.com (jonathan.gibbons at oracle.com) Date: Tue, 10 Apr 2012 14:50:15 +0000 Subject: hg: jdk8/tl/jdk: 7158930: (ann) library support for repeating annotations is not built when compiling the JDK Message-ID: <20120410145025.450FA47FA5@hg.openjdk.java.net> Changeset: eec133f2406a Author: jfranck Date: 2012-04-10 10:45 +0200 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/eec133f2406a 7158930: (ann) library support for repeating annotations is not built when compiling the JDK Reviewed-by: ohair, erikj ! make/java/java/reflect/Makefile From daniel.daugherty at oracle.com Tue Apr 10 15:58:06 2012 From: daniel.daugherty at oracle.com (Daniel D. Daugherty) Date: Tue, 10 Apr 2012 09:58:06 -0600 Subject: RFR(M): 7147848: [macosx] com.sun.management.UnixOperatingSystem uses hardcoded dummy values In-Reply-To: <8C8B239C-4A32-4B15-AB07-A18320E105BF@oracle.com> References: <694BFB79-DE09-492C-860E-F82DD5D3E5AF@oracle.com> <8C8B239C-4A32-4B15-AB07-A18320E105BF@oracle.com> Message-ID: <4F84588E.8010702@oracle.com> Staffan, I reviewed it and I think it looks OK. I tried looking at the code in MacosxOperatingSystem.c relative to the Linux version, but I think it is easily possible to miss something subtle here. You might try a direct ping to Mandy Chung since M&M was her area. You might also try a direct ping to Mike Swingler to get an Apple reviewer. Dan On 4/10/12 3:30 AM, Staffan Larsen wrote: > Any takers for this review? (added core-libs-dev as well) > > Thanks, > /Staffan > > On 3 apr 2012, at 15:39, Staffan Larsen wrote: > >> Please review the following fix: >> >> webrev: http://cr.openjdk.java.net/~sla/7147848/webrev.00/ >> >> bug: http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=7147848 >> >> This fix implements the missing functionality in UnixOperatingSystem >> for Mac OS X. Any feedback on the implementation is welcome as I am >> not very familiar with the APIs in Mac OS X. >> >> I have verified that the changes build on all platforms through JPRT. >> The correctness has been verified manually by looking in JConsole and >> running the tests in test/java/lang/management/OperatingSystemMXBean >> test/com/sun/management/OperatingSystemMXBean. >> >> Thanks, >> /Staffan > From scott.kovatch at oracle.com Tue Apr 10 16:21:18 2012 From: scott.kovatch at oracle.com (Scott Kovatch) Date: Tue, 10 Apr 2012 09:21:18 -0700 Subject: RFR(M): 7147848: [macosx] com.sun.management.UnixOperatingSystem uses hardcoded dummy values In-Reply-To: <4F84588E.8010702@oracle.com> References: <694BFB79-DE09-492C-860E-F82DD5D3E5AF@oracle.com> <8C8B239C-4A32-4B15-AB07-A18320E105BF@oracle.com> <4F84588E.8010702@oracle.com> Message-ID: Regarding Apple, Roger Hoover would be a good person to look at this, as he's spent more time in the Darwin levels of the VM. I think he's still partially attached to the OpenJDK work. -- Scott On Apr 10, 2012, at 8:58 AM, Daniel D. Daugherty wrote: > Staffan, > > I reviewed it and I think it looks OK. I tried looking at the code > in MacosxOperatingSystem.c relative to the Linux version, but I think > it is easily possible to miss something subtle here. > > You might try a direct ping to Mandy Chung since M&M was her area. > You might also try a direct ping to Mike Swingler to get an Apple > reviewer. > > Dan > > > > On 4/10/12 3:30 AM, Staffan Larsen wrote: >> Any takers for this review? (added core-libs-dev as well) >> >> Thanks, >> /Staffan >> >> On 3 apr 2012, at 15:39, Staffan Larsen wrote: >> >>> Please review the following fix: >>> >>> webrev: http://cr.openjdk.java.net/~sla/7147848/webrev.00/ >>> bug: http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=7147848 >>> >>> This fix implements the missing functionality in UnixOperatingSystem for Mac OS X. Any feedback on the implementation is welcome as I am not very familiar with the APIs in Mac OS X. >>> >>> I have verified that the changes build on all platforms through JPRT. The correctness has been verified manually by looking in JConsole and running the tests in test/java/lang/management/OperatingSystemMXBean test/com/sun/management/OperatingSystemMXBean. >>> >>> Thanks, >>> /Staffan >> From rhoover at apple.com Tue Apr 10 17:51:33 2012 From: rhoover at apple.com (rhoover) Date: Tue, 10 Apr 2012 11:51:33 -0600 Subject: RFR(M): 7147848: [macosx] com.sun.management.UnixOperatingSystem uses hardcoded dummy values In-Reply-To: References: <694BFB79-DE09-492C-860E-F82DD5D3E5AF@oracle.com> <8C8B239C-4A32-4B15-AB07-A18320E105BF@oracle.com> <4F84588E.8010702@oracle.com> Message-ID: <07FE6789-E7DA-45F7-999F-6D2E0A62FAEF@apple.com> Scott, Steffan (I am he one who put in the original lines of: return -1.0; // not available being replaced by this patch) I was reluctant to implement these functions because the linux code was quite involved and it appeared to me that there might be some additional semantics to what was implemented than what was indicated by the function names alone. I have not compared the code with the 'top' source, but it looks plausible. As a sanity test, the function values being returned could be printed by a java program and visually compared with the output of 'top' as a system is loaded up. It might also be wise to run the same java program on other platforms to make sure that the magnitude of the numbers is in the same ballpark. On Apr 10, 2012, at 10:21 AM, Scott Kovatch wrote: > > Regarding Apple, Roger Hoover would be a good person to look at this, as he's spent more time in the Darwin levels of the VM. I think he's still partially attached to the OpenJDK work. > > -- Scott > > On Apr 10, 2012, at 8:58 AM, Daniel D. Daugherty wrote: > >> Staffan, >> >> I reviewed it and I think it looks OK. I tried looking at the code >> in MacosxOperatingSystem.c relative to the Linux version, but I think >> it is easily possible to miss something subtle here. >> >> You might try a direct ping to Mandy Chung since M&M was her area. >> You might also try a direct ping to Mike Swingler to get an Apple >> reviewer. >> >> Dan >> >> >> >> On 4/10/12 3:30 AM, Staffan Larsen wrote: >>> Any takers for this review? (added core-libs-dev as well) >>> >>> Thanks, >>> /Staffan >>> >>> On 3 apr 2012, at 15:39, Staffan Larsen wrote: >>> >>>> Please review the following fix: >>>> >>>> webrev: http://cr.openjdk.java.net/~sla/7147848/webrev.00/ >>>> bug: http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=7147848 >>>> >>>> This fix implements the missing functionality in UnixOperatingSystem for Mac OS X. Any feedback on the implementation is welcome as I am not very familiar with the APIs in Mac OS X. >>>> >>>> I have verified that the changes build on all platforms through JPRT. The correctness has been verified manually by looking in JConsole and running the tests in test/java/lang/management/OperatingSystemMXBean test/com/sun/management/OperatingSystemMXBean. >>>> >>>> Thanks, >>>> /Staffan >>> > From mandy.chung at oracle.com Tue Apr 10 19:57:30 2012 From: mandy.chung at oracle.com (Mandy Chung) Date: Tue, 10 Apr 2012 12:57:30 -0700 Subject: RFR(M): 7147848: [macosx] com.sun.management.UnixOperatingSystem uses hardcoded dummy values In-Reply-To: <07FE6789-E7DA-45F7-999F-6D2E0A62FAEF@apple.com> References: <694BFB79-DE09-492C-860E-F82DD5D3E5AF@oracle.com> <8C8B239C-4A32-4B15-AB07-A18320E105BF@oracle.com> <4F84588E.8010702@oracle.com> <07FE6789-E7DA-45F7-999F-6D2E0A62FAEF@apple.com> Message-ID: <4F8490AA.8000208@oracle.com> Staffan, Roger, There isn't any undocumented semantics other than what the specification for com.sun.management.OperatingSystemMXBean specifies (that is indicated by its method name): http://docs.oracle.com/javase/7/docs/jre/api/management/extension/index.html As Roger suggests, you can do some sanity tests and compare the result with native commands (top or other CLI). There are a few regression tests in jdk/test/com/sun/management. In particular, you might want to update test/com/sun/management/TestTotalSwap.sh to check the swap space with a suitable macosx command, if there is one. FYI. I'm not familiar with Mac OS X API and didn't review the code. Mandy On 4/10/2012 10:51 AM, rhoover wrote: > Scott, Steffan > > (I am he one who put in the original lines of: return -1.0; // not available being replaced by this patch) > > I was reluctant to implement these functions because the linux code was quite involved and it appeared to me that there might be some additional semantics to what was implemented than what was indicated by the function names alone. > > I have not compared the code with the 'top' source, but it looks plausible. As a sanity test, the function values being returned could be printed by a java program and visually compared with the output of 'top' as a system is loaded up. It might also be wise to run the same java program on other platforms to make sure that the magnitude of the numbers is in the same ballpark. > > On Apr 10, 2012, at 10:21 AM, Scott Kovatch wrote: > >> Regarding Apple, Roger Hoover would be a good person to look at this, as he's spent more time in the Darwin levels of the VM. I think he's still partially attached to the OpenJDK work. >> >> -- Scott >> >> On Apr 10, 2012, at 8:58 AM, Daniel D. Daugherty wrote: >> >>> Staffan, >>> >>> I reviewed it and I think it looks OK. I tried looking at the code >>> in MacosxOperatingSystem.c relative to the Linux version, but I think >>> it is easily possible to miss something subtle here. >>> >>> You might try a direct ping to Mandy Chung since M&M was her area. >>> You might also try a direct ping to Mike Swingler to get an Apple >>> reviewer. >>> >>> Dan >>> >>> >>> >>> On 4/10/12 3:30 AM, Staffan Larsen wrote: >>>> Any takers for this review? (added core-libs-dev as well) >>>> >>>> Thanks, >>>> /Staffan >>>> >>>> On 3 apr 2012, at 15:39, Staffan Larsen wrote: >>>> >>>>> Please review the following fix: >>>>> >>>>> webrev: http://cr.openjdk.java.net/~sla/7147848/webrev.00/ >>>>> bug: http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=7147848 >>>>> >>>>> This fix implements the missing functionality in UnixOperatingSystem for Mac OS X. Any feedback on the implementation is welcome as I am not very familiar with the APIs in Mac OS X. >>>>> >>>>> I have verified that the changes build on all platforms through JPRT. The correctness has been verified manually by looking in JConsole and running the tests in test/java/lang/management/OperatingSystemMXBean test/com/sun/management/OperatingSystemMXBean. >>>>> >>>>> Thanks, >>>>> /Staffan From kurchi.subhra.hazra at oracle.com Tue Apr 10 23:15:18 2012 From: kurchi.subhra.hazra at oracle.com (Kurchi Hazra) Date: Tue, 10 Apr 2012 16:15:18 -0700 Subject: Code Review Request: 7157893: Warnings Cleanup in java.util.* In-Reply-To: <4F7F8BB8.6070103@oracle.com> References: <4F74FB13.3070407@oracle.com> <4F755D32.6080804@univ-mlv.fr> <4F7D44E8.1020408@oracle.com> <4F7D5407.1040808@univ-mlv.fr> <4F7E08FA.8010200@oracle.com> <4F7EC027.1040101@univ-mlv.fr> <4F7F8BB8.6070103@oracle.com> Message-ID: <4F84BF06.4090802@oracle.com> Hi Stuart, Please find the updated webrev here: http://cr.openjdk.java.net/~khazra/7157893/webrev.01/ I hope to have included all the suggestions correctly. Also, note that I made some new changes in Hashtable.java at lines 185, 355 and 910 to get rid of some additional warnings. Thanks, Kurchi On 4/6/2012 5:35 PM, Stuart Marks wrote: > Hi Kurchi, I think we've converged on the code changes. Please prepare > and post another webrev for a final cross-check before pushing. > > What follows is I think merely residual disagreement over the > philosophy of how to handle generic casts vs reification. :-) > > On 4/6/12 3:06 AM, R?mi Forax wrote: >> On 04/05/2012 11:04 PM, Stuart Marks wrote: >>> I'm somewhat skeptical of making code changes now based on potential >>> future >>> benefits when/if generics become reified. This was discussed before; >>> see >>> >>> http://mail.openjdk.java.net/pipermail/jdk8-dev/2011-December/000454.html >>> >>> >>> In that message, John Rose said "If the best practices have to >>> change, then >>> we'll have to change that code again. Or maybe the retrofit strategy >>> will >>> have to take account of the existing code idioms. In any case, we'll >>> cross >>> that bridge when we get to it. (Coping with reification in this case >>> is a >>> decision to make tomorrow, not today.)" >> >> I disagree with John. The main issue with generics nowadays is that >> most of the people doesn't care about a cast to a type variable because >> everybody knows about erasure. So codes are written with an >> implementation >> glitch in mind. >> Frankly, I don't know if reification will appear (yes it's a kind of >> magical) >> or not >> but I think it's a sloppy path to not consider all casts as equals. > > In order to program effectively with generics, I think you have to > understand erasure and its implications. It may have been an > unfortunate choice, but erasure is part of the language and we have to > deal with it and in some cases rely on it. I don't think it's merely > an "implementation glitch." > > The difficulty I have with reification is that while there are > proposals floating around for how it could be done, nobody really > knows how it will eventually turn out, nor whether it will actually be > done. If it is eventually done, there will legal and illegal > constructs, constructs that generate warnings, and perhaps a style > guide for how to use reified generics properly. > > Right now, we can *imagine* what these future rules might be, but it > seems untenable to me to try to make today's code conform to those > imaginary future rules, especially in the absence of tools to help > support those rules. > >> If unmaskNull return a V, the code of equals will upcast the value >> from Object >> to V >> to just after downcast it from V to Object, >> I think it's better that unmask to return Object and upcast it to V >> when it's >> necessary. > > Certainly there are cases where there's a redundant downcast and > upcast. In a reified world, will this be a significant expense? > Really, I have no idea. > > s'marks -- -Kurchi From zhouyx at linux.vnet.ibm.com Wed Apr 11 02:31:17 2012 From: zhouyx at linux.vnet.ibm.com (Sean Chou) Date: Wed, 11 Apr 2012 10:31:17 +0800 Subject: Request for review : 7121314 : Behavior mismatch between AbstractCollection.toArray(T[] ) and its spec In-Reply-To: <4F83CD4A.5020400@linux.vnet.ibm.com> References: <4F5FD9E2.3060805@gmx.de> <4F61C3F5.2030607@gmx.de> <4F6A2682.7070808@gmx.de> <4F6BA03C.5010906@gmx.de> <4F6CE686.9060206@gmx.de> <4F729B0F.30803@gmx.de> <4F72A1B5.4090209@oracle.com> <4F735D1B.3010007@gmx.de> <4F73AE95.8070900@oracle.com> <4F7791A9.2000200@gmx.de> <4F77CAC7.2040709@oracle.com> <4F83CD4A.5020400@linux.vnet.ibm.com> Message-ID: Hi Charles, Verified. Thanks. On Tue, Apr 10, 2012 at 2:03 PM, Charles Lee wrote: > Hi Sean, > > The the patch has been committed @ > > Changeset: e06ea0dd9207 > Author: littlee > Date: 2012-04-10 10:17 +0800 > URL:http://hg.openjdk.java.**net/jdk8/tl/jdk/rev/**e06ea0dd9207 > > > 7121314: Behavior mismatch between AbstractCollection.toArray(T[] ) and > its spec > Reviewed-by: dholmes, mduigou > Contributed-by: Sean Zhou, Ulf Zibis< > ulf.zibis at gmx.de>, David Holmes > > ! src/share/classes/java/util/**AbstractCollection.java > + test/java/util/**AbstractCollection/**ToArrayTest.java > > Please verified it. > > Thank you all for contributing and reviewing this change. Thank you Mike > and Joe for helping my committing this patch. > > > On 04/01/2012 05:24 PM, Sean Chou wrote: > >> Hi David, >> >> I made the new webrev with your modified testcase: >> http://cr.openjdk.java.net/~**zhouyx/7121314/webrev.04/ . >> >> >> The link to the bug: >> http://bugs.sun.com/**bugdatabase/view_bug.do?bug_**id=7121314 >> The link to the start of the thread: >> >> http://mail.openjdk.java.net/**pipermail/core-libs-dev/2012-** >> March/009512.html >> >> >> On Sun, Apr 1, 2012 at 11:25 AM, David Holmes> >wrote: >> >> Simplified testcase below. >>> >>> Let's finalise this please. >>> >>> Thanks, >>> David >>> >>> >>> On 1/04/2012 1:08 PM, Sean Chou wrote: >>> >>> Hi Ulf, >>>> >>>> This is a regression testcase, there is no performance issue or >>>> future refactoring. >>>> Please wait for David's comments. >>>> >>>> On Sun, Apr 1, 2012 at 7:22 AM, Ulf Zibis>>> > wrote: >>>> >>>> Hi Sean, >>>> >>>> thanks for your effort. >>>> >>>> Am 31.03.2012 11:43, schrieb Sean Chou: >>>> >>>> Hi David and Ulf, >>>> >>>> The new webrev is at: >>>> http://cr.openjdk.java.net/~__****zhouyx/7121314/webrev.03/ >>>> >>>> > >>>> >>>> >>>> > >>>> >>> >>>> >>> ttp://cr.openjdk.java.net/%**7Ezhouyx/7121314/webrev.03/ >>>> >>> >>>> >>>> . >>>> >>>> >>>> About the fix, I remained the previous one. >>>> About the testcase, I merged the 3 files into one. >>>> During merging, there are 2 modifications: >>>> 1. I added static modifier to the 3 classes, which are enclosed >>>> by class ToArrayTest; >>>> >>>> You do not need the indirection via main()...run()...test() if you >>>> have all in 1 file. This was only necessary to feature a general >>>> usability of InfraStructure. You can go back to David's 1 + 1 nested >>>> class approach replacing TConcurrentHashMapX by TestCollection and >>>> maybe rename realMain() to test(). >>>> Additionally, loading 4 classes for 1 test would have some >>>> performance impact on the test run, which could be avoided. >>>> >>>> >>>> 2. I removed field TestCollection.fixedSize, which is never read >>>> after Ulf fixed the bug in testcase. >>>> >>>> This field would serve to "reset" the TestCollection to fixed >>>> default size without the need of new instantiation for later >>>> refactoring or testcase addition. >>>> >>>> As just discussed before, the doc for setSizeSequence() could be >>>> little more specific: >>>> 71 /* >>>> 72 * Sets the values that size() will return on each use. >>>> The first >>>> 73 * call to size will return sizes[0], then sizes[1] >>>> etc. This >>>> 74 * allows us to emulate a concurrent change to the >>>> contents of >>>> 75 * the collection without having to perform concurrent >>>> changes. >>>> 76 * If sizes[n+1] contains a larger value than on last >>>> n-th invocation, >>>> 77 * the collection will appear to have shrunk when >>>> iterated; if a >>>> 78 * smaller value then the collection will appear to >>>> have grown. >>>> 79 * When the last element of sizes is reached, the >>>> collection will >>>> 80 * appear size-fixed. >>>> 81 */ >>>> >>>> >>>> The link to the bug: >>>> http://bugs.sun.com/__****bugdatabase/view_bug.do?bug___** >>>> **id=7121314 >>>> >>>> > >>>> >>>> >>> id=7121314 >>>> >>>> > >>>> >>>> The link to the start of the thread: >>>> http://mail.openjdk.java.net/_****_pipermail/core-libs-dev/** >>>> 2012-** >>>> __March/009512.html>>> pipermail/core-libs-dev/2012-_**_March/009512.html >>>> > >>>> >>>> >>> 2012-** >>>> March/009512.html>>> core-libs-dev/2012-March/**009512.html >>>> > >>>> >>>> Good idea, to repeat these links. >>>> >>>> -Ulf >>>> >>>> >>>> >>>> >>>> -- >>>> Best Regards, >>>> Sean Chou >>>> >>>> >>>> /* >>> * Copyright (c) 2012, Oracle and/or its affiliates. All rights reserved. >>> * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. >>> * >>> * This code is free software; you can redistribute it and/or modify it >>> * under the terms of the GNU General Public License version 2 only, as >>> * published by the Free Software Foundation. >>> * >>> * This code is distributed in the hope that it will be useful, but >>> WITHOUT >>> * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or >>> * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License >>> * version 2 for more details (a copy is included in the LICENSE file >>> that >>> * accompanied this code). >>> * >>> * You should have received a copy of the GNU General Public License >>> version >>> * 2 along with this work; if not, write to the Free Software Foundation, >>> * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. >>> * >>> * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 >>> USA >>> * or visit www.oracle.com if you need additional information or have >>> any >>> * questions. >>> */ >>> >>> /* >>> * @test >>> * @bug 7121314 >>> * @summary AbstractCollection.toArray(T[]****) doesn't return the given >>> >>> array >>> * in concurrent modification. >>> * @author Ulf Zibis, David Holmes >>> */ >>> >>> import java.util.AbstractCollection; >>> import java.util.Arrays; >>> import java.util.Iterator; >>> >>> public class ToArrayTest { >>> >>> static class TestCollection extends AbstractCollection { >>> >>> private final E[] elements; >>> >>> >>> private int[] sizes; >>> private int nextSize; >>> >>> public TestCollection(E[] elements) { >>> this.elements = elements; >>> setSizeSequence(new int[]{elements.length}); >>> } >>> >>> /* >>> * Sets the values that size() will return on each use. The next >>> >>> * call to size will return sizes[0], then sizes[1] etc. This >>> * allows us to emulate a concurrent change to the contents of >>> * the collection without having to perform concurrent changes. >>> * If sizes[n+1] contains a larger value, the collection will >>> appear to >>> * have shrunk when iterated; if a smaller value then the >>> * collection will appear to have grown when iterated >>> >>> */ >>> void setSizeSequence(int... sizes) { >>> this.sizes = sizes; >>> nextSize = 0; >>> } >>> >>> /* can change collection's size after each invocation */ >>> >>> @Override >>> public int size() { >>> return sizes[nextSize == sizes.length-1 ? nextSize : >>> nextSize++]; >>> } >>> >>> @Override >>> public Iterator iterator() { >>> return new Iterator() { >>> >>> int pos = 0; >>> public boolean hasNext() { >>> return pos< sizes[nextSize]; >>> } >>> public E next() { >>> return elements[pos++]; >>> } >>> public void remove() { >>> throw new UnsupportedOperationException(****"Not >>> >>> supported yet."); >>> } >>> }; >>> } >>> } >>> >>> static final Object[] OBJECTS = { new Object(), new Object(), new >>> Object() }; >>> static final TestCollection CANDIDATE = new >>> TestCollection(** >>> >>> OBJECTS); >>> static final int CAP = OBJECTS.length; // capacity of the CANDIDATE >>> static final int LAST = CAP - 1; // last possible array index >>> Object[] a; >>> Object[] res; >>> >>> int last() { return a.length - 1; } >>> >>> protected void test() throws Throwable { >>> // Check array type conversion >>> res = new TestCollection<>(new Object[]{"1", "2"}).toArray(new >>> String[0]); >>> check(res instanceof String[]); >>> check(res.length == 2); >>> check(res[1] == "2"); >>> >>> // Check incompatible type of target array >>> try { >>> res = CANDIDATE.toArray(new String[CAP]); >>> check(false); >>> } catch (Throwable t) { >>> check(t instanceof ArrayStoreException); >>> } >>> >>> // Check more elements than a.length >>> a = new Object[CAP-1]; // appears too small >>> res = CANDIDATE.toArray(a); >>> check(res != a); >>> check(res[LAST] != null); >>> >>> // Check equal elements as a.length >>> a = new Object[CAP]; // appears to match >>> res = CANDIDATE.toArray(a); >>> check(res == a); >>> check(res[last()] != null); >>> >>> // Check equal elements as a.length >>> a = new Object[CAP+1]; // appears too big >>> res = CANDIDATE.toArray(a); >>> check(res == a); >>> check(res[last()] == null); >>> >>> // Check less elements than expected, but more than a.length >>> a = new Object[CAP-2]; // appears too small >>> CANDIDATE.setSizeSequence(CAP, CAP-1); >>> res = CANDIDATE.toArray(a); >>> check(res != a); >>> check(res.length == CAP-1); >>> check(res[LAST-1] != null); >>> >>> // Check less elements than expected, but equal as a.length >>> a = Arrays.copyOf(OBJECTS, CAP); // appears to match >>> CANDIDATE.setSizeSequence(CAP, CAP-1); >>> res = CANDIDATE.toArray(a); >>> check(res == a); >>> check(res[last()] == null); >>> >>> // Check more elements than expected and more than a.length >>> a = new Object[CAP-1]; // appears to match >>> CANDIDATE.setSizeSequence(CAP-****1, CAP); >>> >>> res = CANDIDATE.toArray(a); >>> check(res != a); >>> check(res[LAST] != null); >>> >>> // Check more elements than expected, but equal as a.length >>> a = new Object[CAP-1]; // appears to match >>> CANDIDATE.setSizeSequence(CAP-****2, CAP-1); >>> >>> res = CANDIDATE.toArray(a); >>> check(res == a); >>> check(res[last()] != null); >>> >>> // Check more elements than expected, but less than a.length >>> a = Arrays.copyOf(OBJECTS, CAP); // appears to match >>> CANDIDATE.setSizeSequence(CAP-****2, CAP-1); >>> >>> res = CANDIDATE.toArray(a); >>> check(res == a); >>> check(res[last()] == null); >>> >>> test_7121314(); >>> } >>> >>> /* >>> * Major target of this testcase, bug 7121314. >>> */ >>> protected void test_7121314() throws Throwable { >>> // Check equal elements as a.length, but less than expected >>> a = new Object[CAP-1]; // appears too small >>> CANDIDATE.setSizeSequence(CAP, CAP-1); >>> res = CANDIDATE.toArray(a); >>> check(res == a); >>> check(res[last()] != null); >>> >>> // Check less elements than a.length and less than expected >>> a = Arrays.copyOf(OBJECTS, CAP-1); // appears too small >>> CANDIDATE.setSizeSequence(CAP, CAP-2); >>> res = CANDIDATE.toArray(a); >>> check(res == a); >>> check(res[last()] == null); >>> >>> } >>> >>> >>> public static void main(String[] args) throws Throwable { >>> ToArrayTest testcase = new ToArrayTest(); >>> try { testcase.test(); } catch (Throwable t) { unexpected(t); } >>> >>> System.out.printf("%nPassed = %d, failed = %d%n%n", passed, failed); >>> if (failed> 0) throw new Exception("Some tests failed"); >>> } >>> >>> private static volatile int passed = 0, failed = 0; >>> private static void pass() { passed++; } >>> private static void fail() { failed++; Thread.dumpStack(); } >>> private static void fail(String msg) { System.out.println(msg); fail(); >>> } >>> private static void unexpected(Throwable t) { failed++; >>> t.printStackTrace(); } >>> >>> static void check(boolean cond) { if (cond) pass(); else fail(); } >>> static void equals(Object x, Object y) { >>> >>> if (x == null ? y == null : x.equals(y)) pass(); >>> else {System.out.println(x + " not equal to " + y); fail(); }} >>> >>> } >>> >>> >>> >>> >> > > -- > Yours Charles > > -- Best Regards, Sean Chou From huizhe.wang at oracle.com Wed Apr 11 03:39:56 2012 From: huizhe.wang at oracle.com (Joe Wang) Date: Tue, 10 Apr 2012 20:39:56 -0700 Subject: New reviewers: 7160496 : Rename JDK8 JAXP source directory Message-ID: <4F84FD0C.2030709@oracle.com> After removing the jaxp source drop bundle process, refer to 7150324, the source structure needs to be changed to be consistent with that of jdk7. I will rename jdk8/jaxp/src/share/classes to jdk8/jaxp/src before updating it to the current jaxp source (7160380). webrev for the build files: http://cr.openjdk.java.net/~joehw/jdk8/7160496/build/webrev/ webrevs for the src: (result of hg mv src/share/classes src) http://cr.openjdk.java.net/~joehw/jdk8/7160496/src/webrev/ Thanks, Joe From lana.steuck at oracle.com Wed Apr 11 06:53:49 2012 From: lana.steuck at oracle.com (lana.steuck at oracle.com) Date: Wed, 11 Apr 2012 06:53:49 +0000 Subject: hg: jdk8/tl: 2 new changesets Message-ID: <20120411065349.AF8F247FCD@hg.openjdk.java.net> Changeset: 06ef0b4daa4c Author: katleman Date: 2012-04-05 13:04 -0700 URL: http://hg.openjdk.java.net/jdk8/tl/rev/06ef0b4daa4c Added tag jdk8-b33 for changeset 42f275168fa5 ! .hgtags Changeset: 3b70add6ae45 Author: lana Date: 2012-04-09 21:55 -0700 URL: http://hg.openjdk.java.net/jdk8/tl/rev/3b70add6ae45 Merge From lana.steuck at oracle.com Wed Apr 11 06:53:48 2012 From: lana.steuck at oracle.com (lana.steuck at oracle.com) Date: Wed, 11 Apr 2012 06:53:48 +0000 Subject: hg: jdk8/tl/corba: Added tag jdk8-b33 for changeset 1e2ac1ea3f6c Message-ID: <20120411065349.A59AF47FCC@hg.openjdk.java.net> Changeset: 0feb9b8a9538 Author: katleman Date: 2012-04-05 13:04 -0700 URL: http://hg.openjdk.java.net/jdk8/tl/corba/rev/0feb9b8a9538 Added tag jdk8-b33 for changeset 1e2ac1ea3f6c ! .hgtags From lana.steuck at oracle.com Wed Apr 11 06:53:55 2012 From: lana.steuck at oracle.com (lana.steuck at oracle.com) Date: Wed, 11 Apr 2012 06:53:55 +0000 Subject: hg: jdk8/tl/jaxws: Added tag jdk8-b33 for changeset ea80b2388dce Message-ID: <20120411065359.68E5C47FCE@hg.openjdk.java.net> Changeset: b3cad5619239 Author: katleman Date: 2012-04-05 13:04 -0700 URL: http://hg.openjdk.java.net/jdk8/tl/jaxws/rev/b3cad5619239 Added tag jdk8-b33 for changeset ea80b2388dce ! .hgtags From lana.steuck at oracle.com Wed Apr 11 06:54:03 2012 From: lana.steuck at oracle.com (lana.steuck at oracle.com) Date: Wed, 11 Apr 2012 06:54:03 +0000 Subject: hg: jdk8/tl/jaxp: Added tag jdk8-b33 for changeset 9bcab2b8b8ea Message-ID: <20120411065405.5C19247FCF@hg.openjdk.java.net> Changeset: 19d53d500474 Author: katleman Date: 2012-04-05 13:04 -0700 URL: http://hg.openjdk.java.net/jdk8/tl/jaxp/rev/19d53d500474 Added tag jdk8-b33 for changeset 9bcab2b8b8ea ! .hgtags From lana.steuck at oracle.com Wed Apr 11 06:54:04 2012 From: lana.steuck at oracle.com (lana.steuck at oracle.com) Date: Wed, 11 Apr 2012 06:54:04 +0000 Subject: hg: jdk8/tl/langtools: 3 new changesets Message-ID: <20120411065411.531B647FD0@hg.openjdk.java.net> Changeset: e4241f09e2b6 Author: katleman Date: 2012-04-05 13:05 -0700 URL: http://hg.openjdk.java.net/jdk8/tl/langtools/rev/e4241f09e2b6 Added tag jdk8-b33 for changeset 46831c72b7f6 ! .hgtags Changeset: 517f0789bd4e Author: lana Date: 2012-04-09 21:58 -0700 URL: http://hg.openjdk.java.net/jdk8/tl/langtools/rev/517f0789bd4e Merge Changeset: c35b158e2290 Author: lana Date: 2012-04-10 23:19 -0700 URL: http://hg.openjdk.java.net/jdk8/tl/langtools/rev/c35b158e2290 Merge From lana.steuck at oracle.com Wed Apr 11 06:54:01 2012 From: lana.steuck at oracle.com (lana.steuck at oracle.com) Date: Wed, 11 Apr 2012 06:54:01 +0000 Subject: hg: jdk8/tl/hotspot: 18 new changesets Message-ID: <20120411065439.3035947FD1@hg.openjdk.java.net> Changeset: bc8881f974b8 Author: jcoomes Date: 2012-03-23 22:34 -0700 URL: http://hg.openjdk.java.net/jdk8/tl/hotspot/rev/bc8881f974b8 7156659: new hotspot build - hs24-b06 Reviewed-by: johnc ! make/hotspot_version Changeset: 1139f6b1cbd4 Author: jcoomes Date: 2012-03-20 19:36 -0700 URL: http://hg.openjdk.java.net/jdk8/tl/hotspot/rev/1139f6b1cbd4 7154724: jdk7u4 test properties missing from jprt.properties Reviewed-by: brutisso ! make/jprt.properties Changeset: 0e9e3cecdc81 Author: mgerdin Date: 2012-03-21 08:34 +0100 URL: http://hg.openjdk.java.net/jdk8/tl/hotspot/rev/0e9e3cecdc81 7152791: wbapi tests fail on cygwin Summary: Detect cygwin prescence when setting up PLATFORM. Translate cygwin style paths before passing them on to jtreg. Reviewed-by: jcoomes, brutisso ! test/Makefile Changeset: 8a729074feae Author: nloodin Date: 2012-03-16 16:14 +0100 URL: http://hg.openjdk.java.net/jdk8/tl/hotspot/rev/8a729074feae 7154517: Build error in hotspot-gc without precompiled headers Reviewed-by: jcoomes, brutisso ! src/share/vm/gc_implementation/parallelScavenge/psPromotionManager.inline.hpp Changeset: 64bf7c8270cb Author: johnc Date: 2012-03-12 14:59 -0700 URL: http://hg.openjdk.java.net/jdk8/tl/hotspot/rev/64bf7c8270cb 7147724: G1: hang in SurrogateLockerThread::manipulatePLL Summary: Attempting to initiate a marking cycle when allocating a humongous object can, if a marking cycle is successfully initiated by another thread, result in the allocating thread spinning until the marking cycle is complete. Eliminate a deadlock between the main ConcurrentMarkThread, the SurrogateLocker thread, the VM thread, and a mutator thread waiting on the SecondaryFreeList_lock (while free regions are going to become available) by not manipulating the pending list lock during the prologue and epilogue of the cleanup pause. Reviewed-by: brutisso, jcoomes, tonyp ! src/share/vm/gc_implementation/g1/concurrentMarkThread.cpp ! src/share/vm/gc_implementation/g1/g1CollectedHeap.cpp ! src/share/vm/gc_implementation/g1/vm_operations_g1.cpp ! src/share/vm/gc_implementation/g1/vm_operations_g1.hpp Changeset: 21595f05bc93 Author: tonyp Date: 2012-03-23 10:53 -0400 URL: http://hg.openjdk.java.net/jdk8/tl/hotspot/rev/21595f05bc93 7146246: G1: expose some of the -XX flags that drive which old regions to collect during mixed GCs Summary: Make two G1 cmd line flags available in product builds: G1HeapWastePercent (previously called: G1OldReclaimableThresholdPercent) and G1MixedGCCountTarget (previous called: G1MaxMixedGCNum). Also changed the default of the former from 1% to 5% and the default for G1OldCSetRegionLiveThresholdPercent to 90%. Reviewed-by: azeemj, jwilhelm, johnc ! src/share/vm/gc_implementation/g1/collectionSetChooser.cpp ! src/share/vm/gc_implementation/g1/g1CollectorPolicy.cpp ! src/share/vm/gc_implementation/g1/g1_globals.hpp Changeset: cc74fa5a91a9 Author: brutisso Date: 2012-03-23 15:28 +0100 URL: http://hg.openjdk.java.net/jdk8/tl/hotspot/rev/cc74fa5a91a9 7103665: HeapWord*ParallelScavengeHeap::failed_mem_allocate(unsigned long,bool)+0x97 Summary: Make sure that MutableNUMASpace::ensure_parsability() only calls CollectedHeap::fill_with_object() with valid sizes and make sure CollectedHeap::filler_array_max_size() returns a value that can be converted to an int without overflow Reviewed-by: azeemj, jmasa, iveresov ! src/share/vm/gc_implementation/shared/mutableNUMASpace.cpp ! src/share/vm/gc_interface/collectedHeap.cpp ! src/share/vm/gc_interface/collectedHeap.hpp Changeset: 0c49af52ff2c Author: jwilhelm Date: 2012-03-26 13:22 +0200 URL: http://hg.openjdk.java.net/jdk8/tl/hotspot/rev/0c49af52ff2c Merge Changeset: f7c4174b33ba Author: jiangli Date: 2012-03-13 13:50 -0400 URL: http://hg.openjdk.java.net/jdk8/tl/hotspot/rev/f7c4174b33ba 7109878: The instanceKlass EnclosingMethhod attribute fields can be folded into the _inner_class field. Summary: Fold instanceKlass::_enclosing_method_class_index and instanceKlass::_enclosing_method_method_index into the instanceKlass::_inner_classes array. Reviewed-by: never, coleenp Contributed-by: Jiangli Zhou ! agent/src/share/classes/sun/jvm/hotspot/oops/InstanceKlass.java ! src/share/vm/classfile/classFileParser.cpp ! src/share/vm/classfile/classFileParser.hpp ! src/share/vm/memory/dump.cpp ! src/share/vm/oops/instanceKlass.cpp ! src/share/vm/oops/instanceKlass.hpp ! src/share/vm/oops/instanceKlassKlass.cpp ! src/share/vm/prims/jvm.cpp ! src/share/vm/prims/jvmtiClassFileReconstituter.cpp ! src/share/vm/prims/jvmtiRedefineClasses.cpp ! src/share/vm/runtime/reflection.cpp Changeset: 21b94feb697c Author: collins Date: 2012-03-13 15:37 -0700 URL: http://hg.openjdk.java.net/jdk8/tl/hotspot/rev/21b94feb697c Merge Changeset: 6522ad563f99 Author: dlong Date: 2012-03-17 17:31 -0400 URL: http://hg.openjdk.java.net/jdk8/tl/hotspot/rev/6522ad563f99 Merge ! src/share/vm/oops/instanceKlass.cpp Changeset: 0698f5ef5535 Author: dlong Date: 2012-03-25 18:08 -0400 URL: http://hg.openjdk.java.net/jdk8/tl/hotspot/rev/0698f5ef5535 Merge Changeset: 08bbee70226f Author: dlong Date: 2012-03-29 23:49 -0400 URL: http://hg.openjdk.java.net/jdk8/tl/hotspot/rev/08bbee70226f Merge Changeset: 9a9bb0010c91 Author: brutisso Date: 2012-03-27 10:29 +0200 URL: http://hg.openjdk.java.net/jdk8/tl/hotspot/rev/9a9bb0010c91 7156764: Remove unused size parameter from some CollectedHeap methods Summary: Some minor cleanups Reviewed-by: tonyp, jwilhelm ! src/share/vm/gc_implementation/g1/g1CollectorPolicy.hpp ! src/share/vm/gc_interface/collectedHeap.cpp ! src/share/vm/gc_interface/collectedHeap.hpp ! src/share/vm/gc_interface/collectedHeap.inline.hpp ! src/share/vm/oops/klass.cpp ! src/share/vm/oops/klass.hpp Changeset: 5ab480a250a1 Author: jwilhelm Date: 2012-03-30 09:31 +0200 URL: http://hg.openjdk.java.net/jdk8/tl/hotspot/rev/5ab480a250a1 Merge Changeset: cd47da9383cd Author: amurillo Date: 2012-03-30 14:07 -0700 URL: http://hg.openjdk.java.net/jdk8/tl/hotspot/rev/cd47da9383cd Merge Changeset: 785bcf415ead Author: amurillo Date: 2012-03-30 14:07 -0700 URL: http://hg.openjdk.java.net/jdk8/tl/hotspot/rev/785bcf415ead Added tag hs24-b06 for changeset cd47da9383cd ! .hgtags Changeset: 3b449840d80c Author: katleman Date: 2012-04-05 13:04 -0700 URL: http://hg.openjdk.java.net/jdk8/tl/hotspot/rev/3b449840d80c Added tag jdk8-b33 for changeset 785bcf415ead ! .hgtags From lana.steuck at oracle.com Wed Apr 11 06:54:29 2012 From: lana.steuck at oracle.com (lana.steuck at oracle.com) Date: Wed, 11 Apr 2012 06:54:29 +0000 Subject: hg: jdk8/tl/jdk: 17 new changesets Message-ID: <20120411065724.B1D0447FD2@hg.openjdk.java.net> Changeset: 93ca9cbc8940 Author: katleman Date: 2012-04-05 13:05 -0700 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/93ca9cbc8940 Added tag jdk8-b33 for changeset 78cea258caab ! .hgtags Changeset: 100b6c2f75ba Author: rupashka Date: 2012-03-22 17:10 +0200 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/100b6c2f75ba 6888634: test/closed/javax/swing/Popup/TaskbarPositionTest.java fails Reviewed-by: alexp ! src/share/classes/javax/swing/JPopupMenu.java Changeset: 1dd6fe680681 Author: rupashka Date: 2012-03-23 15:16 +0200 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/1dd6fe680681 4310381: Text in multi-row/col JTabbedPane tabs can be truncated/clipped Reviewed-by: rupashka Contributed-by: Charles Lee ! src/share/classes/javax/swing/plaf/basic/BasicTabbedPaneUI.java + test/javax/swing/JTabbedPane/4310381/bug4310381.html + test/javax/swing/JTabbedPane/4310381/bug4310381.java Changeset: 9923c60c26b7 Author: anthony Date: 2012-03-27 15:41 +0400 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/9923c60c26b7 7150516: [macosx] appletviewer shouldn't link against libX11 on the Mac Summary: Don't link against libX11 on the Mac Reviewed-by: art ! make/launchers/Makefile.launcher Changeset: 4008c98ad48a Author: anthony Date: 2012-03-27 15:49 +0400 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/4008c98ad48a 7149085: [macosx] Quit with QuitStrategy CLOSE_ALL_WINDOWS does terminate application Summary: Don't force the termination of the event loop in the Quit action handler Reviewed-by: art ! src/macosx/classes/com/apple/eawt/_AppEventHandler.java Changeset: 3d5e83373a39 Author: anthony Date: 2012-03-27 15:53 +0400 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/3d5e83373a39 7132692: [macosx] Class com.apple.eawt not functioning Summary: Postpone setting the application delegate until the app is fully initialized Reviewed-by: art ! src/macosx/native/sun/awt/awt.m Changeset: 74a1284ca75a Author: serb Date: 2012-03-29 17:31 +0400 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/74a1284ca75a 7124551: [macosx] Once added, Menu shortcut cannot be removed Reviewed-by: art, anthony ! src/macosx/native/sun/awt/CMenuItem.m Changeset: f84f86c5253e Author: anthony Date: 2012-03-30 18:10 +0400 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/f84f86c5253e 7124428: [macosx] Frame.setExtendedState() doesn't work for undecorated windows Summary: Emulate native NSWindow -zoom for undecorated windows Reviewed-by: art ! src/macosx/classes/sun/lwawt/macosx/CPlatformWindow.java Changeset: 96340349e35b Author: zhouyx Date: 2012-03-31 16:55 +0800 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/96340349e35b 7155298: Editable TextArea/TextField are blocking GUI applications from exit Summary: Stop default caret's timer by setVisible(false) when dispose Reviewed-by: anthony, ant ! src/solaris/classes/sun/awt/X11/XTextAreaPeer.java ! src/solaris/classes/sun/awt/X11/XTextFieldPeer.java + test/java/awt/TextArea/DisposeTest/TestDispose.java + test/java/awt/TextField/DisposeTest/TestDispose.java Changeset: 121e6b435762 Author: anthony Date: 2012-04-03 16:14 +0400 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/121e6b435762 7154177: [macosx] An invisible owner frame becomes visible upon clicking a child window Summary: Establish the parent-child relationship for visible windows only Reviewed-by: serb ! src/macosx/classes/sun/lwawt/macosx/CPlatformWindow.java + test/java/awt/Frame/InvisibleOwner/InvisibleOwner.java Changeset: cbf39e7a7535 Author: alexsch Date: 2012-04-04 16:27 +0400 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/cbf39e7a7535 7093156: NLS Please change the mnemonic assignment system to avoid translation issue (Swing files) Reviewed-by: rupashka ! src/share/classes/com/sun/java/swing/plaf/gtk/resources/gtk.properties ! src/share/classes/com/sun/java/swing/plaf/gtk/resources/gtk_de.properties ! src/share/classes/com/sun/java/swing/plaf/gtk/resources/gtk_es.properties ! src/share/classes/com/sun/java/swing/plaf/gtk/resources/gtk_fr.properties ! src/share/classes/com/sun/java/swing/plaf/gtk/resources/gtk_it.properties ! src/share/classes/com/sun/java/swing/plaf/gtk/resources/gtk_ja.properties ! src/share/classes/com/sun/java/swing/plaf/gtk/resources/gtk_ko.properties ! src/share/classes/com/sun/java/swing/plaf/gtk/resources/gtk_pt_BR.properties ! src/share/classes/com/sun/java/swing/plaf/gtk/resources/gtk_sv.properties ! src/share/classes/com/sun/java/swing/plaf/gtk/resources/gtk_zh_CN.properties ! src/share/classes/com/sun/java/swing/plaf/gtk/resources/gtk_zh_TW.properties ! src/share/classes/com/sun/swing/internal/plaf/basic/resources/basic.properties ! src/share/classes/com/sun/swing/internal/plaf/basic/resources/basic_de.properties ! src/share/classes/com/sun/swing/internal/plaf/basic/resources/basic_es.properties ! src/share/classes/com/sun/swing/internal/plaf/basic/resources/basic_fr.properties ! src/share/classes/com/sun/swing/internal/plaf/basic/resources/basic_it.properties ! src/share/classes/com/sun/swing/internal/plaf/basic/resources/basic_ja.properties ! src/share/classes/com/sun/swing/internal/plaf/basic/resources/basic_ko.properties ! src/share/classes/com/sun/swing/internal/plaf/basic/resources/basic_pt_BR.properties ! src/share/classes/com/sun/swing/internal/plaf/basic/resources/basic_sv.properties ! src/share/classes/com/sun/swing/internal/plaf/basic/resources/basic_zh_CN.properties ! src/share/classes/com/sun/swing/internal/plaf/basic/resources/basic_zh_TW.properties ! src/share/classes/com/sun/swing/internal/plaf/metal/resources/metal.properties ! src/share/classes/com/sun/swing/internal/plaf/metal/resources/metal_de.properties ! src/share/classes/com/sun/swing/internal/plaf/metal/resources/metal_es.properties ! src/share/classes/com/sun/swing/internal/plaf/metal/resources/metal_fr.properties ! src/share/classes/com/sun/swing/internal/plaf/metal/resources/metal_it.properties ! src/share/classes/com/sun/swing/internal/plaf/metal/resources/metal_ja.properties ! src/share/classes/com/sun/swing/internal/plaf/metal/resources/metal_ko.properties ! src/share/classes/com/sun/swing/internal/plaf/metal/resources/metal_pt_BR.properties ! src/share/classes/com/sun/swing/internal/plaf/metal/resources/metal_sv.properties ! src/share/classes/com/sun/swing/internal/plaf/metal/resources/metal_zh_CN.properties ! src/share/classes/com/sun/swing/internal/plaf/metal/resources/metal_zh_TW.properties ! src/share/classes/com/sun/swing/internal/plaf/synth/resources/synth.properties ! src/share/classes/com/sun/swing/internal/plaf/synth/resources/synth_de.properties ! src/share/classes/com/sun/swing/internal/plaf/synth/resources/synth_es.properties ! src/share/classes/com/sun/swing/internal/plaf/synth/resources/synth_fr.properties ! src/share/classes/com/sun/swing/internal/plaf/synth/resources/synth_it.properties ! src/share/classes/com/sun/swing/internal/plaf/synth/resources/synth_ja.properties ! src/share/classes/com/sun/swing/internal/plaf/synth/resources/synth_ko.properties ! src/share/classes/com/sun/swing/internal/plaf/synth/resources/synth_pt_BR.properties ! src/share/classes/com/sun/swing/internal/plaf/synth/resources/synth_sv.properties ! src/share/classes/com/sun/swing/internal/plaf/synth/resources/synth_zh_CN.properties ! src/share/classes/com/sun/swing/internal/plaf/synth/resources/synth_zh_TW.properties ! src/share/classes/javax/swing/UIDefaults.java Changeset: e0bf70361777 Author: kizune Date: 2012-04-04 20:31 +0400 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/e0bf70361777 7153735: [macosx] Text with diacritics is pasted with broken encoding Reviewed-by: anthony ! make/common/Defs-linux.gmk ! make/common/Defs-macosx.gmk ! make/common/Defs-solaris.gmk ! make/common/Defs-windows.gmk ! make/java/awt/Makefile + src/macosx/lib/content-types.properties + src/macosx/lib/flavormap.properties Changeset: 20ee3a75b46b Author: kizune Date: 2012-04-04 20:32 +0400 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/20ee3a75b46b Merge Changeset: 86502b25099a Author: lana Date: 2012-04-04 12:35 -0700 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/86502b25099a Merge Changeset: 8d337e26d6e7 Author: lana Date: 2012-04-04 13:16 -0700 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/8d337e26d6e7 Merge ! make/common/Defs-linux.gmk ! make/common/Defs-solaris.gmk ! make/common/Defs-windows.gmk - test/sun/security/pkcs11/nss/lib/linux-amd64/libfreebl3.chk - test/sun/security/pkcs11/nss/lib/linux-amd64/libfreebl3.so - test/sun/security/pkcs11/nss/lib/linux-amd64/libnspr4.so - test/sun/security/pkcs11/nss/lib/linux-amd64/libnss3.so - test/sun/security/pkcs11/nss/lib/linux-amd64/libnssckbi.so - test/sun/security/pkcs11/nss/lib/linux-amd64/libplc4.so - test/sun/security/pkcs11/nss/lib/linux-amd64/libplds4.so - test/sun/security/pkcs11/nss/lib/linux-amd64/libsoftokn3.chk - test/sun/security/pkcs11/nss/lib/linux-amd64/libsoftokn3.so - test/sun/security/pkcs11/nss/lib/linux-i586/libnspr4.so - test/sun/security/pkcs11/nss/lib/linux-i586/libnss3.so - test/sun/security/pkcs11/nss/lib/linux-i586/libnssckbi.so - test/sun/security/pkcs11/nss/lib/linux-i586/libplc4.so - test/sun/security/pkcs11/nss/lib/linux-i586/libplds4.so - test/sun/security/pkcs11/nss/lib/linux-i586/libsoftokn3.so - test/sun/security/pkcs11/nss/lib/solaris-amd64/libnspr4.so - test/sun/security/pkcs11/nss/lib/solaris-amd64/libnss3.so - test/sun/security/pkcs11/nss/lib/solaris-amd64/libnssckbi.so - test/sun/security/pkcs11/nss/lib/solaris-amd64/libplc4.so - test/sun/security/pkcs11/nss/lib/solaris-amd64/libplds4.so - test/sun/security/pkcs11/nss/lib/solaris-amd64/libsoftokn3.so - test/sun/security/pkcs11/nss/lib/solaris-i586/libfreebl3.so - test/sun/security/pkcs11/nss/lib/solaris-i586/libnspr4.so - test/sun/security/pkcs11/nss/lib/solaris-i586/libnss3.so - test/sun/security/pkcs11/nss/lib/solaris-i586/libnssckbi.so - test/sun/security/pkcs11/nss/lib/solaris-i586/libplc4.so - test/sun/security/pkcs11/nss/lib/solaris-i586/libplds4.so - test/sun/security/pkcs11/nss/lib/solaris-i586/libsoftokn3.so - test/sun/security/pkcs11/nss/lib/solaris-sparc/libfreebl_hybrid_3.chk - test/sun/security/pkcs11/nss/lib/solaris-sparc/libfreebl_hybrid_3.so - test/sun/security/pkcs11/nss/lib/solaris-sparc/libnspr4.so - test/sun/security/pkcs11/nss/lib/solaris-sparc/libnss3.so - test/sun/security/pkcs11/nss/lib/solaris-sparc/libnssckbi.so - test/sun/security/pkcs11/nss/lib/solaris-sparc/libplc4.so - test/sun/security/pkcs11/nss/lib/solaris-sparc/libplds4.so - test/sun/security/pkcs11/nss/lib/solaris-sparc/libsoftokn3.chk - test/sun/security/pkcs11/nss/lib/solaris-sparc/libsoftokn3.so - test/sun/security/pkcs11/nss/lib/solaris-sparcv9/libnspr4.so - test/sun/security/pkcs11/nss/lib/solaris-sparcv9/libnss3.so - test/sun/security/pkcs11/nss/lib/solaris-sparcv9/libnssckbi.so - test/sun/security/pkcs11/nss/lib/solaris-sparcv9/libplc4.so - test/sun/security/pkcs11/nss/lib/solaris-sparcv9/libplds4.so - test/sun/security/pkcs11/nss/lib/solaris-sparcv9/libsoftokn3.so - test/sun/security/pkcs11/nss/lib/windows-i586/libnspr4.dll - test/sun/security/pkcs11/nss/lib/windows-i586/libplc4.dll - test/sun/security/pkcs11/nss/lib/windows-i586/libplds4.dll - test/sun/security/pkcs11/nss/lib/windows-i586/nss3.dll - test/sun/security/pkcs11/nss/lib/windows-i586/nssckbi.dll - test/sun/security/pkcs11/nss/lib/windows-i586/softokn3.dll Changeset: 1f6ce7fa4296 Author: lana Date: 2012-04-09 21:57 -0700 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/1f6ce7fa4296 Merge - test/sun/security/pkcs11/nss/lib/linux-amd64/libfreebl3.chk - test/sun/security/pkcs11/nss/lib/linux-amd64/libfreebl3.so - test/sun/security/pkcs11/nss/lib/linux-amd64/libnspr4.so - test/sun/security/pkcs11/nss/lib/linux-amd64/libnss3.so - test/sun/security/pkcs11/nss/lib/linux-amd64/libnssckbi.so - test/sun/security/pkcs11/nss/lib/linux-amd64/libplc4.so - test/sun/security/pkcs11/nss/lib/linux-amd64/libplds4.so - test/sun/security/pkcs11/nss/lib/linux-amd64/libsoftokn3.chk - test/sun/security/pkcs11/nss/lib/linux-amd64/libsoftokn3.so - test/sun/security/pkcs11/nss/lib/linux-i586/libnspr4.so - test/sun/security/pkcs11/nss/lib/linux-i586/libnss3.so - test/sun/security/pkcs11/nss/lib/linux-i586/libnssckbi.so - test/sun/security/pkcs11/nss/lib/linux-i586/libplc4.so - test/sun/security/pkcs11/nss/lib/linux-i586/libplds4.so - test/sun/security/pkcs11/nss/lib/linux-i586/libsoftokn3.so - test/sun/security/pkcs11/nss/lib/solaris-amd64/libnspr4.so - test/sun/security/pkcs11/nss/lib/solaris-amd64/libnss3.so - test/sun/security/pkcs11/nss/lib/solaris-amd64/libnssckbi.so - test/sun/security/pkcs11/nss/lib/solaris-amd64/libplc4.so - test/sun/security/pkcs11/nss/lib/solaris-amd64/libplds4.so - test/sun/security/pkcs11/nss/lib/solaris-amd64/libsoftokn3.so - test/sun/security/pkcs11/nss/lib/solaris-i586/libfreebl3.so - test/sun/security/pkcs11/nss/lib/solaris-i586/libnspr4.so - test/sun/security/pkcs11/nss/lib/solaris-i586/libnss3.so - test/sun/security/pkcs11/nss/lib/solaris-i586/libnssckbi.so - test/sun/security/pkcs11/nss/lib/solaris-i586/libplc4.so - test/sun/security/pkcs11/nss/lib/solaris-i586/libplds4.so - test/sun/security/pkcs11/nss/lib/solaris-i586/libsoftokn3.so - test/sun/security/pkcs11/nss/lib/solaris-sparc/libfreebl_hybrid_3.chk - test/sun/security/pkcs11/nss/lib/solaris-sparc/libfreebl_hybrid_3.so - test/sun/security/pkcs11/nss/lib/solaris-sparc/libnspr4.so - test/sun/security/pkcs11/nss/lib/solaris-sparc/libnss3.so - test/sun/security/pkcs11/nss/lib/solaris-sparc/libnssckbi.so - test/sun/security/pkcs11/nss/lib/solaris-sparc/libplc4.so - test/sun/security/pkcs11/nss/lib/solaris-sparc/libplds4.so - test/sun/security/pkcs11/nss/lib/solaris-sparc/libsoftokn3.chk - test/sun/security/pkcs11/nss/lib/solaris-sparc/libsoftokn3.so - test/sun/security/pkcs11/nss/lib/solaris-sparcv9/libnspr4.so - test/sun/security/pkcs11/nss/lib/solaris-sparcv9/libnss3.so - test/sun/security/pkcs11/nss/lib/solaris-sparcv9/libnssckbi.so - test/sun/security/pkcs11/nss/lib/solaris-sparcv9/libplc4.so - test/sun/security/pkcs11/nss/lib/solaris-sparcv9/libplds4.so - test/sun/security/pkcs11/nss/lib/solaris-sparcv9/libsoftokn3.so - test/sun/security/pkcs11/nss/lib/windows-i586/libnspr4.dll - test/sun/security/pkcs11/nss/lib/windows-i586/libplc4.dll - test/sun/security/pkcs11/nss/lib/windows-i586/libplds4.dll - test/sun/security/pkcs11/nss/lib/windows-i586/nss3.dll - test/sun/security/pkcs11/nss/lib/windows-i586/nssckbi.dll - test/sun/security/pkcs11/nss/lib/windows-i586/softokn3.dll Changeset: 4fea9a99532f Author: lana Date: 2012-04-10 23:18 -0700 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/4fea9a99532f Merge From youdwei at linux.vnet.ibm.com Wed Apr 11 07:36:37 2012 From: youdwei at linux.vnet.ibm.com (Deven You) Date: Wed, 11 Apr 2012 15:36:37 +0800 Subject: sun.management.Agent: the properties.putAll API may fail with ConcurrentModifcationException on multi-thread scenario Message-ID: <4F853485.7020607@linux.vnet.ibm.com> Hi core-libs-devs, I am not sure if sun.management.Agent belongs to jmx-dev mailing list, if so please anyone tell me. This issue is that the sun.management.Agent.loadManagementProperties() will invoke properties.putAll which will throw ConcurrentModifcationException if there are other threads which modify the properties concurrently. I have made a patch[1] which synchronize the sysProps so that putAll can work on multi-thread scenario. The test case is also available in [1]. Thanks a lot! [1] http://cr.openjdk.java.net/~littlee/OJDK-256/webrev.00 -- Best Regards, Deven From youdwei at linux.vnet.ibm.com Wed Apr 11 07:44:34 2012 From: youdwei at linux.vnet.ibm.com (Deven You) Date: Wed, 11 Apr 2012 15:44:34 +0800 Subject: New constructor in sun.tools.java.ClassPath builds a path using File.separator instead of File.pathSeparatorChar In-Reply-To: <4F83EB5C.7040205@oracle.com> References: <4F82892C.7090709@linux.vnet.ibm.com> <4F82A5FC.7080601@oracle.com> <4F82ACCA.800@linux.vnet.ibm.com> <4F83EB5C.7040205@oracle.com> Message-ID: <4F853662.8020404@linux.vnet.ibm.com> On 04/10/2012 04:12 PM, Alan Bateman wrote: > On 09/04/2012 10:32, Deven You wrote: >> : >> >> The issue is reported by one of our test team which maintains a set >> of ORB test cases. > Okay but I guess I'm still a bit curious as it's not obvious that rmic > (or rmic --iiop) invokes toString, maybe this is a white box test or a > test that is using sun.tools.java.*? > > -Alan. > Hi Alan, Though I am not very sure, I guess it is a white box test. I find some code snippet which may cause this errors, like: sun.misc.URLClassPath.pathToURLs(classPath.toString())); I think if anyone use above like code, it will fail. Thanks a lot! -- Best Regards, Deven From staffan.larsen at oracle.com Wed Apr 11 07:52:58 2012 From: staffan.larsen at oracle.com (Staffan Larsen) Date: Wed, 11 Apr 2012 09:52:58 +0200 Subject: RFR(M): 7147848: [macosx] com.sun.management.UnixOperatingSystem uses hardcoded dummy values In-Reply-To: <4F8490AA.8000208@oracle.com> References: <694BFB79-DE09-492C-860E-F82DD5D3E5AF@oracle.com> <8C8B239C-4A32-4B15-AB07-A18320E105BF@oracle.com> <4F84588E.8010702@oracle.com> <07FE6789-E7DA-45F7-999F-6D2E0A62FAEF@apple.com> <4F8490AA.8000208@oracle.com> Message-ID: <3567B062-5700-48BA-B691-1A0A2AC3E412@oracle.com> Thank you all for your comments! New webrev here: http://cr.openjdk.java.net/~sla/7147848/webrev.01/ Changes: - Fixed Dmitry's comments - Updated TestTotalSwap.sh for Darwin (thanks Mandy) I have verified the values manually by running a Java program (see attachment) and comparing to top and other system utilities. I've also compared output with a Linux system to compare magnitude of numbers. I have run the various regression tests. Thanks, /Staffan On 10 apr 2012, at 21:57, Mandy Chung wrote: > Staffan, Roger, > > There isn't any undocumented semantics other than what the specification for com.sun.management.OperatingSystemMXBean specifies (that is indicated by its method name): > http://docs.oracle.com/javase/7/docs/jre/api/management/extension/index.html > > As Roger suggests, you can do some sanity tests and compare the result with native commands (top or other CLI). There are a few regression tests in jdk/test/com/sun/management. In particular, you might want to update test/com/sun/management/TestTotalSwap.sh to check the swap space with a suitable macosx command, if there is one. > > FYI. I'm not familiar with Mac OS X API and didn't review the code. > > Mandy > > On 4/10/2012 10:51 AM, rhoover wrote: >> Scott, Steffan >> >> (I am he one who put in the original lines of: return -1.0; // not available being replaced by this patch) >> >> I was reluctant to implement these functions because the linux code was quite involved and it appeared to me that there might be some additional semantics to what was implemented than what was indicated by the function names alone. >> >> I have not compared the code with the 'top' source, but it looks plausible. As a sanity test, the function values being returned could be printed by a java program and visually compared with the output of 'top' as a system is loaded up. It might also be wise to run the same java program on other platforms to make sure that the magnitude of the numbers is in the same ballpark. >> >> On Apr 10, 2012, at 10:21 AM, Scott Kovatch wrote: >> >>> Regarding Apple, Roger Hoover would be a good person to look at this, as he's spent more time in the Darwin levels of the VM. I think he's still partially attached to the OpenJDK work. >>> >>> -- Scott >>> >>> On Apr 10, 2012, at 8:58 AM, Daniel D. Daugherty wrote: >>> >>>> Staffan, >>>> >>>> I reviewed it and I think it looks OK. I tried looking at the code >>>> in MacosxOperatingSystem.c relative to the Linux version, but I think >>>> it is easily possible to miss something subtle here. >>>> >>>> You might try a direct ping to Mandy Chung since M&M was her area. >>>> You might also try a direct ping to Mike Swingler to get an Apple >>>> reviewer. >>>> >>>> Dan >>>> >>>> >>>> >>>> On 4/10/12 3:30 AM, Staffan Larsen wrote: >>>>> Any takers for this review? (added core-libs-dev as well) >>>>> >>>>> Thanks, >>>>> /Staffan >>>>> >>>>> On 3 apr 2012, at 15:39, Staffan Larsen wrote: >>>>> >>>>>> Please review the following fix: >>>>>> >>>>>> webrev: http://cr.openjdk.java.net/~sla/7147848/webrev.00/ >>>>>> bug: http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=7147848 >>>>>> >>>>>> This fix implements the missing functionality in UnixOperatingSystem for Mac OS X. Any feedback on the implementation is welcome as I am not very familiar with the APIs in Mac OS X. >>>>>> >>>>>> I have verified that the changes build on all platforms through JPRT. The correctness has been verified manually by looking in JConsole and running the tests in test/java/lang/management/OperatingSystemMXBean test/com/sun/management/OperatingSystemMXBean. >>>>>> >>>>>> Thanks, >>>>>> /Staffan From maurizio.cimadamore at oracle.com Wed Apr 11 10:02:16 2012 From: maurizio.cimadamore at oracle.com (maurizio.cimadamore at oracle.com) Date: Wed, 11 Apr 2012 10:02:16 +0000 Subject: hg: jdk8/tl/langtools: 7154127: Inference cleanup: remove bound check analysis from visitors in Types.java Message-ID: <20120411100222.0E03347FD7@hg.openjdk.java.net> Changeset: 6f0ed5a89c25 Author: mcimadamore Date: 2012-04-11 10:50 +0100 URL: http://hg.openjdk.java.net/jdk8/tl/langtools/rev/6f0ed5a89c25 7154127: Inference cleanup: remove bound check analysis from visitors in Types.java Summary: Remove bound checking rules from recursive subtype visitors in Types.java and replace with centralized bound-checking logic Reviewed-by: jjg, dlsmith ! src/share/classes/com/sun/tools/javac/code/Type.java ! src/share/classes/com/sun/tools/javac/code/Types.java ! src/share/classes/com/sun/tools/javac/comp/Infer.java ! src/share/classes/com/sun/tools/javac/resources/compiler.properties ! src/share/classes/com/sun/tools/javac/util/RichDiagnosticFormatter.java ! test/tools/javac/Diagnostics/6722234/T6722234b_1.out ! test/tools/javac/Diagnostics/6722234/T6722234b_2.out ! test/tools/javac/Diagnostics/6799605/T6799605.out ! test/tools/javac/cast/7123100/T7123100a.out ! test/tools/javac/diags/examples.not-yet.txt ! test/tools/javac/diags/examples/CantApplyDiamond1.java ! test/tools/javac/diags/examples/IncompatibleTypes1.java + test/tools/javac/diags/examples/InferNoConformingAssignment.java - test/tools/javac/diags/examples/InferredDoNotConformToBounds.java + test/tools/javac/diags/examples/InferredDoNotConformToEq.java + test/tools/javac/diags/examples/InferredDoNotConformToLower.java + test/tools/javac/diags/examples/InferredDoNotConformToUpper.java ! test/tools/javac/diags/examples/InvalidInferredTypes.java ! test/tools/javac/diags/examples/WhereCaptured.java ! test/tools/javac/diags/examples/WhereCaptured1.java + test/tools/javac/diags/examples/WhereFreshTvar.java ! test/tools/javac/generics/diamond/neg/Neg06.out ! test/tools/javac/generics/diamond/neg/Neg07.out ! test/tools/javac/generics/inference/6315770/T6315770.out ! test/tools/javac/generics/inference/6611449/T6611449.out ! test/tools/javac/generics/inference/6638712/T6638712b.out ! test/tools/javac/generics/inference/6638712/T6638712d.out ! test/tools/javac/generics/inference/6638712/T6638712e.out ! test/tools/javac/generics/inference/6650759/T6650759m.out ! test/tools/javac/generics/inference/7086601/T7086601a.out + test/tools/javac/generics/inference/7154127/T7154127.java + test/tools/javac/generics/inference/7154127/T7154127.out From Dmitry.Samersoff at oracle.com Wed Apr 11 10:33:52 2012 From: Dmitry.Samersoff at oracle.com (Dmitry Samersoff) Date: Wed, 11 Apr 2012 14:33:52 +0400 Subject: RFR(M): 7147848: [macosx] com.sun.management.UnixOperatingSystem uses hardcoded dummy values In-Reply-To: <3567B062-5700-48BA-B691-1A0A2AC3E412@oracle.com> References: <694BFB79-DE09-492C-860E-F82DD5D3E5AF@oracle.com> <8C8B239C-4A32-4B15-AB07-A18320E105BF@oracle.com> <4F84588E.8010702@oracle.com> <07FE6789-E7DA-45F7-999F-6D2E0A62FAEF@apple.com> <4F8490AA.8000208@oracle.com> <3567B062-5700-48BA-B691-1A0A2AC3E412@oracle.com> Message-ID: <4F855E10.90805@oracle.com> Staffan, MacosxOperatingSystem.c Probably something went wrong with webrev: 48 if (kr != KERN_SUCCESS) { 49 return 0; 50 } 133 if (gettimeofday(&now, NULL)) { 134 return -1; 135 } -Dmitry On 2012-04-11 11:52, Staffan Larsen wrote: > Thank you all for your comments! > > New webrev here: http://cr.openjdk.java.net/~sla/7147848/webrev.01/ > > Changes: > - Fixed Dmitry's comments > - Updated TestTotalSwap.sh for Darwin (thanks Mandy) > > I have verified the values manually by running a Java program (see > attachment) and comparing to top and other system utilities. I've also > compared output with a Linux system to compare magnitude of numbers. I > have run the various regression tests. > > Thanks, > /Staffan > > > > > On 10 apr 2012, at 21:57, Mandy Chung wrote: > >> Staffan, Roger, >> >> There isn't any undocumented semantics other than what the >> specification for com.sun.management.OperatingSystemMXBean specifies >> (that is indicated by its method name): >> http://docs.oracle.com/javase/7/docs/jre/api/management/extension/index.html >> >> As Roger suggests, you can do some sanity tests and compare the result >> with native commands (top or other CLI). There are a few regression >> tests in jdk/test/com/sun/management. In particular, you might want to >> update test/com/sun/management/TestTotalSwap.sh to check the swap >> space with a suitable macosx command, if there is one. >> >> FYI. I'm not familiar with Mac OS X API and didn't review the code. >> >> Mandy >> >> On 4/10/2012 10:51 AM, rhoover wrote: >>> Scott, Steffan >>> >>> (I am he one who put in the original lines of: return -1.0; // not >>> available being replaced by this patch) >>> >>> I was reluctant to implement these functions because the linux code >>> was quite involved and it appeared to me that there might be some >>> additional semantics to what was implemented than what was indicated >>> by the function names alone. >>> >>> I have not compared the code with the 'top' source, but it looks >>> plausible. As a sanity test, the function values being returned could >>> be printed by a java program and visually compared with the output of >>> 'top' as a system is loaded up. It might also be wise to run the same >>> java program on other platforms to make sure that the magnitude of >>> the numbers is in the same ballpark. >>> >>> On Apr 10, 2012, at 10:21 AM, Scott Kovatch wrote: >>> >>>> Regarding Apple, Roger Hoover would be a good person to look at >>>> this, as he's spent more time in the Darwin levels of the VM. I >>>> think he's still partially attached to the OpenJDK work. >>>> >>>> -- Scott >>>> >>>> On Apr 10, 2012, at 8:58 AM, Daniel D. Daugherty wrote: >>>> >>>>> Staffan, >>>>> >>>>> I reviewed it and I think it looks OK. I tried looking at the code >>>>> in MacosxOperatingSystem.c relative to the Linux version, but I think >>>>> it is easily possible to miss something subtle here. >>>>> >>>>> You might try a direct ping to Mandy Chung since M&M was her area. >>>>> You might also try a direct ping to Mike Swingler to get an Apple >>>>> reviewer. >>>>> >>>>> Dan >>>>> >>>>> >>>>> >>>>> On 4/10/12 3:30 AM, Staffan Larsen wrote: >>>>>> Any takers for this review? (added core-libs-dev as well) >>>>>> >>>>>> Thanks, >>>>>> /Staffan >>>>>> >>>>>> On 3 apr 2012, at 15:39, Staffan Larsen wrote: >>>>>> >>>>>>> Please review the following fix: >>>>>>> >>>>>>> webrev: >>>>>>> http://cr.openjdk.java.net/~sla/7147848/webrev.00/ >>>>>>> > >>>>>>> bug: http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=7147848 >>>>>>> >>>>>>> This fix implements the missing functionality in >>>>>>> UnixOperatingSystem for Mac OS X. Any feedback on the >>>>>>> implementation is welcome as I am not very familiar with the APIs >>>>>>> in Mac OS X. >>>>>>> >>>>>>> I have verified that the changes build on all platforms through >>>>>>> JPRT. The correctness has been verified manually by looking in >>>>>>> JConsole and running the tests in >>>>>>> test/java/lang/management/OperatingSystemMXBean >>>>>>> test/com/sun/management/OperatingSystemMXBean. >>>>>>> >>>>>>> Thanks, >>>>>>> /Staffan > -- Dmitry Samersoff Java Hotspot development team, SPB04 * There will come soft rains ... From forax at univ-mlv.fr Wed Apr 11 11:42:19 2012 From: forax at univ-mlv.fr (=?UTF-8?B?UsOpbWkgRm9yYXg=?=) Date: Wed, 11 Apr 2012 13:42:19 +0200 Subject: Generics & Reification Was Code Review Request: 7157893: Warnings Cleanup in java.util.* In-Reply-To: <4F7F8BB8.6070103@oracle.com> References: <4F74FB13.3070407@oracle.com> <4F755D32.6080804@univ-mlv.fr> <4F7D44E8.1020408@oracle.com> <4F7D5407.1040808@univ-mlv.fr> <4F7E08FA.8010200@oracle.com> <4F7EC027.1040101@univ-mlv.fr> <4F7F8BB8.6070103@oracle.com> Message-ID: <4F856E1B.1000004@univ-mlv.fr> On 04/07/2012 02:35 AM, Stuart Marks wrote: > Hi Kurchi, I think we've converged on the code changes. Please prepare > and post another webrev for a final cross-check before pushing. > > What follows is I think merely residual disagreement over the > philosophy of how to handle generic casts vs reification. :-) I fully agree. > > On 4/6/12 3:06 AM, R?mi Forax wrote: >> On 04/05/2012 11:04 PM, Stuart Marks wrote: >>> I'm somewhat skeptical of making code changes now based on potential >>> future >>> benefits when/if generics become reified. This was discussed before; >>> see >>> >>> http://mail.openjdk.java.net/pipermail/jdk8-dev/2011-December/000454.html >>> >>> >>> In that message, John Rose said "If the best practices have to >>> change, then >>> we'll have to change that code again. Or maybe the retrofit strategy >>> will >>> have to take account of the existing code idioms. In any case, we'll >>> cross >>> that bridge when we get to it. (Coping with reification in this case >>> is a >>> decision to make tomorrow, not today.)" >> >> I disagree with John. The main issue with generics nowadays is that >> most of the people doesn't care about a cast to a type variable because >> everybody knows about erasure. So codes are written with an >> implementation >> glitch in mind. >> Frankly, I don't know if reification will appear (yes it's a kind of >> magical) >> or not >> but I think it's a sloppy path to not consider all casts as equals. > > In order to program effectively with generics, I think you have to > understand erasure and its implications. It may have been an > unfortunate choice, but erasure is part of the language and we have to > deal with it and in some cases rely on it. I don't think it's merely > an "implementation glitch." Erased casts are an implementation glitch, not the erasure by itself. > > The difficulty I have with reification is that while there are > proposals floating around for how it could be done, nobody really > knows how it will eventually turn out, nor whether it will actually be > done. If it is eventually done, there will legal and illegal > constructs, constructs that generate warnings, and perhaps a style > guide for how to use reified generics properly. > > Right now, we can *imagine* what these future rules might be, but it > seems untenable to me to try to make today's code conform to those > imaginary future rules, especially in the absence of tools to help > support those rules. There are several implementations that exist, here is the publicly available papers. M. Cimadamore and M. Viroli. Reifying wildcards in Java using the EGO approach. In SAC '07: Proceedings of the 2007 ACM symposium on Applied computing, pages 1315{1322, New York, NY, USA, 2007. ACM. M. Cimadamore and M. Viroli. On Rei cation of Java Wildcards. Science of Computer Programming, 2008 > >> If unmaskNull return a V, the code of equals will upcast the value >> from Object >> to V >> to just after downcast it from V to Object, >> I think it's better that unmask to return Object and upcast it to V >> when it's >> necessary. > > Certainly there are cases where there's a redundant downcast and > upcast. In a reified world, will this be a significant expense? > Really, I have no idea. I don't think so, the equivalent cast with a reified type is cheap. > > s'marks R?mi From lists at laerad.com Wed Apr 11 14:18:01 2012 From: lists at laerad.com (Benedict Elliott Smith) Date: Wed, 11 Apr 2012 15:18:01 +0100 Subject: Integer.parseInt Message-ID: Hi, Looking at the source code, it doesn't appear as though there is any reason to require the input be a String - only length() and charAt() are called, which are both declared by CharSequence. Is there a reason I can't fathom, or was it an oversight? It would be nice to widen the type for this (and potentially other equivalent methods). From daniel.daugherty at oracle.com Wed Apr 11 14:33:01 2012 From: daniel.daugherty at oracle.com (daniel.daugherty at oracle.com) Date: Wed, 11 Apr 2012 14:33:01 +0000 Subject: hg: jdk8/tl/jdk: 7071907: JDK: Full Debug Symbols Message-ID: <20120411143325.17FE447FE2@hg.openjdk.java.net> Changeset: d922195b678d Author: dcubed Date: 2012-04-11 07:26 -0700 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/d922195b678d 7071907: JDK: Full Debug Symbols Summary: Add initial FDS support to some libraries and programs. Reviewed-by: kamg, fparain, sspitsyn, dsamersoff ! make/com/sun/tools/attach/Makefile ! make/common/Defs-linux.gmk ! make/common/Defs-solaris.gmk ! make/common/Library.gmk ! make/common/Program.gmk ! make/common/Release.gmk ! make/java/instrument/Makefile ! make/java/java_crw_demo/Makefile ! make/java/java_hprof_demo/Makefile ! make/java/main/java/Makefile ! make/java/management/Makefile ! make/java/npt/Makefile ! make/java/verify/Makefile ! make/jpda/jdwp/Makefile ! make/jpda/transport/socket/Makefile ! make/launchers/Makefile.launcher ! make/mkdemo/jvmti/compiledMethodLoad/Makefile ! make/mkdemo/jvmti/gctest/Makefile ! make/mkdemo/jvmti/heapTracker/Makefile ! make/mkdemo/jvmti/heapViewer/Makefile ! make/mkdemo/jvmti/hprof/Makefile ! make/mkdemo/jvmti/minst/Makefile ! make/mkdemo/jvmti/mtrace/Makefile ! make/mkdemo/jvmti/versionCheck/Makefile ! make/mkdemo/jvmti/waiters/Makefile ! make/sun/tracing/dtrace/Makefile From forax at univ-mlv.fr Wed Apr 11 14:45:47 2012 From: forax at univ-mlv.fr (=?ISO-8859-1?Q?R=E9mi_Forax?=) Date: Wed, 11 Apr 2012 16:45:47 +0200 Subject: Integer.parseInt In-Reply-To: References: Message-ID: <4F85991B.40002@univ-mlv.fr> On 04/11/2012 04:18 PM, Benedict Elliott Smith wrote: > Hi, > > Looking at the source code, it doesn't appear as though there is any reason > to require the input be a String - only length() and charAt() are called, > which are both declared by CharSequence. Is there a reason I can't fathom, > or was it an oversight? It would be nice to widen the type for this (and > potentially other equivalent methods). Integer.parseInt (1.0 or 1.1) pre-date CharSequence (1.4), that's why it use a String an not a CharSequence. If you don't want to break all already compiled programs, you can't just replace String by CharSequence because the exact signature of the method (with the parameter types) is encoded in the bytecode. Joe Darcy write a cool blog post on that [1]. The best here is to add new methods that takes a CharSequence, move the code that use a String in them and change the method that takes a String to delegate to the one that use a CharSequence. cheers, R?mi [1] https://blogs.oracle.com/darcy/entry/kinds_of_compatibility From lists at laerad.com Wed Apr 11 14:50:12 2012 From: lists at laerad.com (Benedict Elliott Smith) Date: Wed, 11 Apr 2012 15:50:12 +0100 Subject: Integer.parseInt In-Reply-To: <4F85991B.40002@univ-mlv.fr> References: <4F85991B.40002@univ-mlv.fr> Message-ID: Sounds like a perfectly good reason! - and also that it should be a relatively safe change to implement. Any volunteers? I'd be happy to, but I expect the overhead for having a non-contributor do it would exceed the actual work by several orders of magnitude. On 11 April 2012 15:45, R?mi Forax wrote: > On 04/11/2012 04:18 PM, Benedict Elliott Smith wrote: > >> Hi, >> >> Looking at the source code, it doesn't appear as though there is any >> reason >> to require the input be a String - only length() and charAt() are called, >> which are both declared by CharSequence. Is there a reason I can't fathom, >> or was it an oversight? It would be nice to widen the type for this (and >> potentially other equivalent methods). >> > > Integer.parseInt (1.0 or 1.1) pre-date CharSequence (1.4), > that's why it use a String an not a CharSequence. > > If you don't want to break all already compiled programs, > you can't just replace String by CharSequence because the exact signature > of the method > (with the parameter types) is encoded in the bytecode. > Joe Darcy write a cool blog post on that [1]. > > The best here is to add new methods that takes a CharSequence, move the > code that use > a String in them and change the method that takes a String to delegate to > the one that use > a CharSequence. > > cheers, > R?mi > [1] https://blogs.oracle.com/**darcy/entry/kinds_of_**compatibility > > > From kelly.ohair at oracle.com Wed Apr 11 14:56:27 2012 From: kelly.ohair at oracle.com (Kelly O'Hair) Date: Wed, 11 Apr 2012 07:56:27 -0700 Subject: New reviewers: 7160496 : Rename JDK8 JAXP source directory In-Reply-To: <4F84FD0C.2030709@oracle.com> References: <4F84FD0C.2030709@oracle.com> Message-ID: Looks fine to me. -kto On Apr 10, 2012, at 8:39 PM, Joe Wang wrote: > After removing the jaxp source drop bundle process, refer to 7150324, the source structure needs to be changed to be consistent with that of jdk7. I will rename jdk8/jaxp/src/share/classes to jdk8/jaxp/src before updating it to the current jaxp source (7160380). > > webrev for the build files: http://cr.openjdk.java.net/~joehw/jdk8/7160496/build/webrev/ > > webrevs for the src: (result of hg mv src/share/classes src) http://cr.openjdk.java.net/~joehw/jdk8/7160496/src/webrev/ > > Thanks, > Joe From zhouyx at linux.vnet.ibm.com Wed Apr 11 14:58:10 2012 From: zhouyx at linux.vnet.ibm.com (Sean Chou) Date: Wed, 11 Apr 2012 22:58:10 +0800 Subject: Replace the static error string in ZIP_Put_In_Cache0 with on stack memory In-Reply-To: <4F83EB02.7050708@oracle.com> References: <4F82B361.4080806@oracle.com> <4F83EB02.7050708@oracle.com> Message-ID: Hi hotspot guys, Would any one like to take a look at this? I'm trying to fix a potential race in ZIP_Open, it is found classLoader.cpp uses this function. So a webrev for hotspot is made as well, but I need a sponsor from hotspot as suggested by Alan Bateman. The start of this thread is http://mail.openjdk.java.net/pipermail/core-libs-dev/2012-April/009766.html. The webrevs: http://cr.openjdk.java.net/~zhouyx/7159982/webrev-hotspot.00/ and http://cr.openjdk.java.net/~zhouyx/7159982/webrev.00/ . And, I found JDK_Version::is_gte_jdk18x_version suggested by Alan does not exist in hotspot yet, shall I add it to the patch too ? On Tue, Apr 10, 2012 at 4:10 PM, Alan Bateman wrote: > On 10/04/2012 08:10, Sean Chou wrote: > >> >> And it is found that hotspot calls ZIP_Open through (*ZipOpen) in file >> classLoader.cpp .So I also made a patch for it and add hotspot-dev to cc >> list. >> File classLoader.cpp is the only one I have found calling ZIP_Open. >> >> The webrev for hotspot is: >> http://cr.openjdk.java.net/~**zhouyx/7159982/webrev-hotspot.**00/< >> http://cr.openjdk.java.net/%**7Ezhouyx/7159982/webrev-**hotspot.00/ >> > >> >> >> >> To hotspot guys, >> >> We are trying to make the error path in ZIP_Open in >> src/share/native/java/util/**zip/zip_util.c thread safe by changing the >> errbuf[] from static array to on stack array. This will cause the returned >> error string allocated from heap, which need to be freed. I checked the >> code and found only classLoader.cpp calls this function, so I made the >> above webrev. Please take a look. >> >> It's good that you spotted that this is called from the VM (I'd > forgotten that). In that case things get a bit more complicated because the > hotspot repository takes a different route into master and also goes into > 7u releases too. I'll leave the HotSpot group to comment on your proposed > change but I assume it will require adding JDK_Version::is_gte_jdk18x_**version > so that the JDK version can be tested before decided whether to free the > error message. It will also require a sponsor as you cannot push changes to > jdk8/tl/hotspot, all HotSpot changes require going through a build+test > system (no direct pushes). > > -Alan > -- Best Regards, Sean Chou From staffan.larsen at oracle.com Wed Apr 11 16:24:14 2012 From: staffan.larsen at oracle.com (Staffan Larsen) Date: Wed, 11 Apr 2012 18:24:14 +0200 Subject: RFR(M): 7147848: [macosx] com.sun.management.UnixOperatingSystem uses hardcoded dummy values In-Reply-To: <4F855E10.90805@oracle.com> References: <694BFB79-DE09-492C-860E-F82DD5D3E5AF@oracle.com> <8C8B239C-4A32-4B15-AB07-A18320E105BF@oracle.com> <4F84588E.8010702@oracle.com> <07FE6789-E7DA-45F7-999F-6D2E0A62FAEF@apple.com> <4F8490AA.8000208@oracle.com> <3567B062-5700-48BA-B691-1A0A2AC3E412@oracle.com> <4F855E10.90805@oracle.com> Message-ID: <53FB22EA-AAD6-4CC3-B212-CC5D592DC088@oracle.com> Apparently something went wrong with the webrev. Here is new one: http://cr.openjdk.java.net/~sla/7147848/webrev.02/ Thanks Dmitry, /Staffan On 11 apr 2012, at 12:33, Dmitry Samersoff wrote: > Staffan, > > MacosxOperatingSystem.c > > Probably something went wrong with webrev: > > 48 if (kr != KERN_SUCCESS) { > 49 return 0; > 50 } > > > 133 if (gettimeofday(&now, NULL)) { > 134 return -1; > 135 } > > -Dmitry > > > On 2012-04-11 11:52, Staffan Larsen wrote: >> Thank you all for your comments! >> >> New webrev here: http://cr.openjdk.java.net/~sla/7147848/webrev.01/ >> >> Changes: >> - Fixed Dmitry's comments >> - Updated TestTotalSwap.sh for Darwin (thanks Mandy) >> >> I have verified the values manually by running a Java program (see >> attachment) and comparing to top and other system utilities. I've also >> compared output with a Linux system to compare magnitude of numbers. I >> have run the various regression tests. >> >> Thanks, >> /Staffan >> >> >> >> >> On 10 apr 2012, at 21:57, Mandy Chung wrote: >> >>> Staffan, Roger, >>> >>> There isn't any undocumented semantics other than what the >>> specification for com.sun.management.OperatingSystemMXBean specifies >>> (that is indicated by its method name): >>> http://docs.oracle.com/javase/7/docs/jre/api/management/extension/index.html >>> >>> As Roger suggests, you can do some sanity tests and compare the result >>> with native commands (top or other CLI). There are a few regression >>> tests in jdk/test/com/sun/management. In particular, you might want to >>> update test/com/sun/management/TestTotalSwap.sh to check the swap >>> space with a suitable macosx command, if there is one. >>> >>> FYI. I'm not familiar with Mac OS X API and didn't review the code. >>> >>> Mandy >>> >>> On 4/10/2012 10:51 AM, rhoover wrote: >>>> Scott, Steffan >>>> >>>> (I am he one who put in the original lines of: return -1.0; // not >>>> available being replaced by this patch) >>>> >>>> I was reluctant to implement these functions because the linux code >>>> was quite involved and it appeared to me that there might be some >>>> additional semantics to what was implemented than what was indicated >>>> by the function names alone. >>>> >>>> I have not compared the code with the 'top' source, but it looks >>>> plausible. As a sanity test, the function values being returned could >>>> be printed by a java program and visually compared with the output of >>>> 'top' as a system is loaded up. It might also be wise to run the same >>>> java program on other platforms to make sure that the magnitude of >>>> the numbers is in the same ballpark. >>>> >>>> On Apr 10, 2012, at 10:21 AM, Scott Kovatch wrote: >>>> >>>>> Regarding Apple, Roger Hoover would be a good person to look at >>>>> this, as he's spent more time in the Darwin levels of the VM. I >>>>> think he's still partially attached to the OpenJDK work. >>>>> >>>>> -- Scott >>>>> >>>>> On Apr 10, 2012, at 8:58 AM, Daniel D. Daugherty wrote: >>>>> >>>>>> Staffan, >>>>>> >>>>>> I reviewed it and I think it looks OK. I tried looking at the code >>>>>> in MacosxOperatingSystem.c relative to the Linux version, but I think >>>>>> it is easily possible to miss something subtle here. >>>>>> >>>>>> You might try a direct ping to Mandy Chung since M&M was her area. >>>>>> You might also try a direct ping to Mike Swingler to get an Apple >>>>>> reviewer. >>>>>> >>>>>> Dan >>>>>> >>>>>> >>>>>> >>>>>> On 4/10/12 3:30 AM, Staffan Larsen wrote: >>>>>>> Any takers for this review? (added core-libs-dev as well) >>>>>>> >>>>>>> Thanks, >>>>>>> /Staffan >>>>>>> >>>>>>> On 3 apr 2012, at 15:39, Staffan Larsen wrote: >>>>>>> >>>>>>>> Please review the following fix: >>>>>>>> >>>>>>>> webrev: >>>>>>>> http://cr.openjdk.java.net/~sla/7147848/webrev.00/ >>>>>>>> > >>>>>>>> bug: http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=7147848 >>>>>>>> >>>>>>>> This fix implements the missing functionality in >>>>>>>> UnixOperatingSystem for Mac OS X. Any feedback on the >>>>>>>> implementation is welcome as I am not very familiar with the APIs >>>>>>>> in Mac OS X. >>>>>>>> >>>>>>>> I have verified that the changes build on all platforms through >>>>>>>> JPRT. The correctness has been verified manually by looking in >>>>>>>> JConsole and running the tests in >>>>>>>> test/java/lang/management/OperatingSystemMXBean >>>>>>>> test/com/sun/management/OperatingSystemMXBean. >>>>>>>> >>>>>>>> Thanks, >>>>>>>> /Staffan >> > > > -- > Dmitry Samersoff > Java Hotspot development team, SPB04 > * There will come soft rains ... From Dmitry.Samersoff at oracle.com Wed Apr 11 18:01:38 2012 From: Dmitry.Samersoff at oracle.com (Dmitry Samersoff) Date: Wed, 11 Apr 2012 22:01:38 +0400 Subject: RFR(M): 7147848: [macosx] com.sun.management.UnixOperatingSystem uses hardcoded dummy values In-Reply-To: <53FB22EA-AAD6-4CC3-B212-CC5D592DC088@oracle.com> References: <694BFB79-DE09-492C-860E-F82DD5D3E5AF@oracle.com> <8C8B239C-4A32-4B15-AB07-A18320E105BF@oracle.com> <4F84588E.8010702@oracle.com> <07FE6789-E7DA-45F7-999F-6D2E0A62FAEF@apple.com> <4F8490AA.8000208@oracle.com> <3567B062-5700-48BA-B691-1A0A2AC3E412@oracle.com> <4F855E10.90805@oracle.com> <53FB22EA-AAD6-4CC3-B212-CC5D592DC088@oracle.com> Message-ID: <4F85C702.1040303@oracle.com> Looks good for me. -Dmitry On 2012-04-11 20:24, Staffan Larsen wrote: > Apparently something went wrong with the webrev. Here is new one: > > http://cr.openjdk.java.net/~sla/7147848/webrev.02/ > > Thanks Dmitry, > /Staffan > > On 11 apr 2012, at 12:33, Dmitry Samersoff wrote: > >> Staffan, >> >> MacosxOperatingSystem.c >> >> Probably something went wrong with webrev: >> >> 48 if (kr != KERN_SUCCESS) { >> 49 return 0; >> 50 } >> >> >> 133 if (gettimeofday(&now, NULL)) { >> 134 return -1; >> 135 } >> >> -Dmitry >> >> >> On 2012-04-11 11:52, Staffan Larsen wrote: >>> Thank you all for your comments! >>> >>> New webrev here: http://cr.openjdk.java.net/~sla/7147848/webrev.01/ >>> >>> Changes: >>> - Fixed Dmitry's comments >>> - Updated TestTotalSwap.sh for Darwin (thanks Mandy) >>> >>> I have verified the values manually by running a Java program (see >>> attachment) and comparing to top and other system utilities. I've also >>> compared output with a Linux system to compare magnitude of numbers. I >>> have run the various regression tests. >>> >>> Thanks, >>> /Staffan >>> >>> >>> >>> >>> On 10 apr 2012, at 21:57, Mandy Chung wrote: >>> >>>> Staffan, Roger, >>>> >>>> There isn't any undocumented semantics other than what the >>>> specification for com.sun.management.OperatingSystemMXBean specifies >>>> (that is indicated by its method name): >>>> http://docs.oracle.com/javase/7/docs/jre/api/management/extension/index.html >>>> >>>> As Roger suggests, you can do some sanity tests and compare the result >>>> with native commands (top or other CLI). There are a few regression >>>> tests in jdk/test/com/sun/management. In particular, you might want to >>>> update test/com/sun/management/TestTotalSwap.sh to check the swap >>>> space with a suitable macosx command, if there is one. >>>> >>>> FYI. I'm not familiar with Mac OS X API and didn't review the code. >>>> >>>> Mandy >>>> >>>> On 4/10/2012 10:51 AM, rhoover wrote: >>>>> Scott, Steffan >>>>> >>>>> (I am he one who put in the original lines of: return -1.0; // not >>>>> available being replaced by this patch) >>>>> >>>>> I was reluctant to implement these functions because the linux code >>>>> was quite involved and it appeared to me that there might be some >>>>> additional semantics to what was implemented than what was indicated >>>>> by the function names alone. >>>>> >>>>> I have not compared the code with the 'top' source, but it looks >>>>> plausible. As a sanity test, the function values being returned could >>>>> be printed by a java program and visually compared with the output of >>>>> 'top' as a system is loaded up. It might also be wise to run the same >>>>> java program on other platforms to make sure that the magnitude of >>>>> the numbers is in the same ballpark. >>>>> >>>>> On Apr 10, 2012, at 10:21 AM, Scott Kovatch wrote: >>>>> >>>>>> Regarding Apple, Roger Hoover would be a good person to look at >>>>>> this, as he's spent more time in the Darwin levels of the VM. I >>>>>> think he's still partially attached to the OpenJDK work. >>>>>> >>>>>> -- Scott >>>>>> >>>>>> On Apr 10, 2012, at 8:58 AM, Daniel D. Daugherty wrote: >>>>>> >>>>>>> Staffan, >>>>>>> >>>>>>> I reviewed it and I think it looks OK. I tried looking at the code >>>>>>> in MacosxOperatingSystem.c relative to the Linux version, but I think >>>>>>> it is easily possible to miss something subtle here. >>>>>>> >>>>>>> You might try a direct ping to Mandy Chung since M&M was her area. >>>>>>> You might also try a direct ping to Mike Swingler to get an Apple >>>>>>> reviewer. >>>>>>> >>>>>>> Dan >>>>>>> >>>>>>> >>>>>>> >>>>>>> On 4/10/12 3:30 AM, Staffan Larsen wrote: >>>>>>>> Any takers for this review? (added core-libs-dev as well) >>>>>>>> >>>>>>>> Thanks, >>>>>>>> /Staffan >>>>>>>> >>>>>>>> On 3 apr 2012, at 15:39, Staffan Larsen wrote: >>>>>>>> >>>>>>>>> Please review the following fix: >>>>>>>>> >>>>>>>>> webrev: >>>>>>>>> http://cr.openjdk.java.net/~sla/7147848/webrev.00/ >>>>>>>>> > >>>>>>>>> > >>>>>>>>> >> >>>>>>>>> bug: http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=7147848 >>>>>>>>> >>>>>>>>> This fix implements the missing functionality in >>>>>>>>> UnixOperatingSystem for Mac OS X. Any feedback on the >>>>>>>>> implementation is welcome as I am not very familiar with the APIs >>>>>>>>> in Mac OS X. >>>>>>>>> >>>>>>>>> I have verified that the changes build on all platforms through >>>>>>>>> JPRT. The correctness has been verified manually by looking in >>>>>>>>> JConsole and running the tests in >>>>>>>>> test/java/lang/management/OperatingSystemMXBean >>>>>>>>> test/com/sun/management/OperatingSystemMXBean. >>>>>>>>> >>>>>>>>> Thanks, >>>>>>>>> /Staffan >>> >> >> >> -- >> Dmitry Samersoff >> Java Hotspot development team, SPB04 >> * There will come soft rains ... > -- Dmitry Samersoff Java Hotspot development team, SPB04 * There will come soft rains ... From jim.gish at oracle.com Wed Apr 11 18:06:12 2012 From: jim.gish at oracle.com (Jim Gish) Date: Wed, 11 Apr 2012 14:06:12 -0400 Subject: RFR 7116200: (cs) test/java/nio/charset/coders/StreamTimeout.java fails with "Address already in use" Message-ID: <4F85C814.3080700@oracle.com> Hi, Please review the following Description: The current code uses the fixed port of 22222 and the test fails if that port is in use. The patch creates the socket on any open port using new ServerSocket(0) and then determines the port in use with getLocalPort() on the socket. That port is then used when creating the client. This ensures the test won't fail with "address already in use". Also, all sockets are closed when done. (Would appreciate comments on whether I have engaged in overkill here, or not.) Patch: http://cr.openjdk.java.net/~jgish/7116200/webrev.00/ Tests run: jdk_nio3 -- all pass. Thanks, Jim Gish From forax at univ-mlv.fr Wed Apr 11 19:11:39 2012 From: forax at univ-mlv.fr (=?ISO-8859-1?Q?R=E9mi_Forax?=) Date: Wed, 11 Apr 2012 21:11:39 +0200 Subject: RFR 7116200: (cs) test/java/nio/charset/coders/StreamTimeout.java fails with "Address already in use" In-Reply-To: <4F85C814.3080700@oracle.com> References: <4F85C814.3080700@oracle.com> Message-ID: <4F85D76B.1020202@univ-mlv.fr> On 04/11/2012 08:06 PM, Jim Gish wrote: > Hi, > > Please review the following > > Description: > > The current code uses the fixed port of 22222 and the test fails if > that port is in use. The patch creates the socket on any open port > using new ServerSocket(0) and then determines the port in use with > getLocalPort() on the socket. That port is then used when creating > the client. This ensures the test won't fail with "address already in > use". > > Also, all sockets are closed when done. (Would appreciate comments on > whether I have engaged in overkill here, or not.) > > Patch: > > http://cr.openjdk.java.net/~jgish/7116200/webrev.00/ > > Tests run: jdk_nio3 -- all pass. > > Thanks, > Jim Gish aaaaah, there is no guarantee from the memory model that the main thread will see the field 'so' initialized even if the thread client has executed the method run(). And there is a kind of a race between the main thread and the thread Client, the main thread calls closeSocket() while the method run() may have not finished. It's not a clear race because the socket IOs are used as a kind of synchro but it's really hairy. R?mi From Alan.Bateman at oracle.com Wed Apr 11 20:02:10 2012 From: Alan.Bateman at oracle.com (Alan Bateman) Date: Wed, 11 Apr 2012 21:02:10 +0100 Subject: RFR 7116200: (cs) test/java/nio/charset/coders/StreamTimeout.java fails with "Address already in use" In-Reply-To: <4F85C814.3080700@oracle.com> References: <4F85C814.3080700@oracle.com> Message-ID: <4F85E342.8090307@oracle.com> On 11/04/2012 19:06, Jim Gish wrote: > Hi, > > Please review the following > > Description: > > The current code uses the fixed port of 22222 and the test fails if > that port is in use. The patch creates the socket on any open port > using new ServerSocket(0) and then determines the port in use with > getLocalPort() on the socket. That port is then used when creating > the client. This ensures the test won't fail with "address already in > use". > > Also, all sockets are closed when done. (Would appreciate comments on > whether I have engaged in overkill here, or not.) > > Patch: > > http://cr.openjdk.java.net/~jgish/7116200/webrev.00/ > > Tests run: jdk_nio3 -- all pass. > > Thanks, > Jim Gish I agree with R?mi, it would be better for Client to have a final field for the port or the client Socket and have it passed to the constructor. It would also be nice if Client implemented Closeable. One other thing is that try-with-resources with clean-up the closing/exception handling in main. Also I think it would be better not to catch the IOException at the end as that would mean the test would pass when there is failure. -Alan. From mike.duigou at oracle.com Wed Apr 11 20:06:39 2012 From: mike.duigou at oracle.com (Mike Duigou) Date: Wed, 11 Apr 2012 13:06:39 -0700 Subject: Code Review Request: 7157893: Warnings Cleanup in java.util.* In-Reply-To: <4F84BF06.4090802@oracle.com> References: <4F74FB13.3070407@oracle.com> <4F755D32.6080804@univ-mlv.fr> <4F7D44E8.1020408@oracle.com> <4F7D5407.1040808@univ-mlv.fr> <4F7E08FA.8010200@oracle.com> <4F7EC027.1040101@univ-mlv.fr> <4F7F8BB8.6070103@oracle.com> <4F84BF06.4090802@oracle.com> Message-ID: <4EB77287-D57F-4C56-9CEE-E261686A96EA@oracle.com> This thread has gone on long enough I've lost track of the reasoning behind some of the choices. Specifically, I'm wondering why Entry[] is preferred over Entry[] for HashMap and Hashtable. Understandably is needed to the array creation but the technique used by WeakHashMap would seem to be equally appropriate for the other hash base Map implementations. R?mi? Mike On Apr 10 2012, at 16:15 , Kurchi Hazra wrote: > Hi Stuart, > > Please find the updated webrev here: http://cr.openjdk.java.net/~khazra/7157893/webrev.01/ > > I hope to have included all the suggestions correctly. Also, note that I made some new changes in Hashtable.java at lines 185, 355 and 910 to get rid of some additional warnings. > > Thanks, > Kurchi > > > On 4/6/2012 5:35 PM, Stuart Marks wrote: >> Hi Kurchi, I think we've converged on the code changes. Please prepare and post another webrev for a final cross-check before pushing. >> >> What follows is I think merely residual disagreement over the philosophy of how to handle generic casts vs reification. :-) >> >> On 4/6/12 3:06 AM, R?mi Forax wrote: >>> On 04/05/2012 11:04 PM, Stuart Marks wrote: >>>> I'm somewhat skeptical of making code changes now based on potential future >>>> benefits when/if generics become reified. This was discussed before; see >>>> >>>> http://mail.openjdk.java.net/pipermail/jdk8-dev/2011-December/000454.html >>>> >>>> In that message, John Rose said "If the best practices have to change, then >>>> we'll have to change that code again. Or maybe the retrofit strategy will >>>> have to take account of the existing code idioms. In any case, we'll cross >>>> that bridge when we get to it. (Coping with reification in this case is a >>>> decision to make tomorrow, not today.)" >>> >>> I disagree with John. The main issue with generics nowadays is that >>> most of the people doesn't care about a cast to a type variable because >>> everybody knows about erasure. So codes are written with an implementation >>> glitch in mind. >>> Frankly, I don't know if reification will appear (yes it's a kind of magical) >>> or not >>> but I think it's a sloppy path to not consider all casts as equals. >> >> In order to program effectively with generics, I think you have to understand erasure and its implications. It may have been an unfortunate choice, but erasure is part of the language and we have to deal with it and in some cases rely on it. I don't think it's merely an "implementation glitch." >> >> The difficulty I have with reification is that while there are proposals floating around for how it could be done, nobody really knows how it will eventually turn out, nor whether it will actually be done. If it is eventually done, there will legal and illegal constructs, constructs that generate warnings, and perhaps a style guide for how to use reified generics properly. >> >> Right now, we can *imagine* what these future rules might be, but it seems untenable to me to try to make today's code conform to those imaginary future rules, especially in the absence of tools to help support those rules. >> >>> If unmaskNull return a V, the code of equals will upcast the value from Object >>> to V >>> to just after downcast it from V to Object, >>> I think it's better that unmask to return Object and upcast it to V when it's >>> necessary. >> >> Certainly there are cases where there's a redundant downcast and upcast. In a reified world, will this be a significant expense? Really, I have no idea. >> >> s'marks > > -- > -Kurchi > From Alan.Bateman at oracle.com Wed Apr 11 20:09:05 2012 From: Alan.Bateman at oracle.com (Alan Bateman) Date: Wed, 11 Apr 2012 21:09:05 +0100 Subject: Replace the static error string in ZIP_Put_In_Cache0 with on stack memory In-Reply-To: References: <4F82B361.4080806@oracle.com> <4F83EB02.7050708@oracle.com> Message-ID: <4F85E4E1.3040906@oracle.com> On 11/04/2012 15:58, Sean Chou wrote: > Hi hotspot guys, > > Would any one like to take a look at this? I'm trying to fix a > potential race in ZIP_Open, it is found classLoader.cpp uses this > function. So a webrev for hotspot is made as well, but I need a > sponsor from hotspot as suggested by Alan Bateman. > > The start of this thread is > http://mail.openjdk.java.net/pipermail/core-libs-dev/2012-April/009766.html > . > The webrevs: > http://cr.openjdk.java.net/~zhouyx/7159982/webrev-hotspot.00/ > > and http://cr.openjdk.java.net/~zhouyx/7159982/webrev.00/ > . > > And, I found JDK_Version::is_gte_jdk18x_version suggested by Alan > does not exist in hotspot yet, shall I add it to the patch too ? I had a brief chat with Coleen Phillimore about this. One suggestion that would avoid HotSpot changes is to change ZIP_Open so that it doesn't return an error message or returns something fixed. It's not used in the VM anyway (as per Coleen's reply). We need the error message for the java.util.zip APIs but that doesn't go through ZIP_Open so it means it can be freed and *pmsg = NULL returned (or a pointer to one fixed generic message). -Alan From forax at univ-mlv.fr Wed Apr 11 21:34:21 2012 From: forax at univ-mlv.fr (=?ISO-8859-1?Q?R=E9mi_Forax?=) Date: Wed, 11 Apr 2012 23:34:21 +0200 Subject: Code Review Request: 7157893: Warnings Cleanup in java.util.* In-Reply-To: <4EB77287-D57F-4C56-9CEE-E261686A96EA@oracle.com> References: <4F74FB13.3070407@oracle.com> <4F755D32.6080804@univ-mlv.fr> <4F7D44E8.1020408@oracle.com> <4F7D5407.1040808@univ-mlv.fr> <4F7E08FA.8010200@oracle.com> <4F7EC027.1040101@univ-mlv.fr> <4F7F8BB8.6070103@oracle.com> <4F84BF06.4090802@oracle.com> <4EB77287-D57F-4C56-9CEE-E261686A96EA@oracle.com> Message-ID: <4F85F8DD.2030802@univ-mlv.fr> On 04/11/2012 10:06 PM, Mike Duigou wrote: > This thread has gone on long enough I've lost track of the reasoning behind some of the choices. > > Specifically, I'm wondering why Entry[] is preferred over Entry[] for HashMap and Hashtable. Understandably is needed to the array creation but the technique used by WeakHashMap would seem to be equally appropriate for the other hash base Map implementations. > > R?mi? WeakHashMap was already warning free so I haven't modified it, I've just removed one or two raw type warnings. The main issue with the translation chosen by WeakHashMap is that an array of parametrized types is something that is unsafe (the VM doesn't do a runtime check for the array store) so you can easily add code that you think innocuous but that that will introduce a bug. > > Mike R?mi > > On Apr 10 2012, at 16:15 , Kurchi Hazra wrote: > >> Hi Stuart, >> >> Please find the updated webrev here: http://cr.openjdk.java.net/~khazra/7157893/webrev.01/ >> >> I hope to have included all the suggestions correctly. Also, note that I made some new changes in Hashtable.java at lines 185, 355 and 910 to get rid of some additional warnings. >> >> Thanks, >> Kurchi >> >> >> On 4/6/2012 5:35 PM, Stuart Marks wrote: >>> Hi Kurchi, I think we've converged on the code changes. Please prepare and post another webrev for a final cross-check before pushing. >>> >>> What follows is I think merely residual disagreement over the philosophy of how to handle generic casts vs reification. :-) >>> >>> On 4/6/12 3:06 AM, R?mi Forax wrote: >>>> On 04/05/2012 11:04 PM, Stuart Marks wrote: >>>>> I'm somewhat skeptical of making code changes now based on potential future >>>>> benefits when/if generics become reified. This was discussed before; see >>>>> >>>>> http://mail.openjdk.java.net/pipermail/jdk8-dev/2011-December/000454.html >>>>> >>>>> In that message, John Rose said "If the best practices have to change, then >>>>> we'll have to change that code again. Or maybe the retrofit strategy will >>>>> have to take account of the existing code idioms. In any case, we'll cross >>>>> that bridge when we get to it. (Coping with reification in this case is a >>>>> decision to make tomorrow, not today.)" >>>> I disagree with John. The main issue with generics nowadays is that >>>> most of the people doesn't care about a cast to a type variable because >>>> everybody knows about erasure. So codes are written with an implementation >>>> glitch in mind. >>>> Frankly, I don't know if reification will appear (yes it's a kind of magical) >>>> or not >>>> but I think it's a sloppy path to not consider all casts as equals. >>> In order to program effectively with generics, I think you have to understand erasure and its implications. It may have been an unfortunate choice, but erasure is part of the language and we have to deal with it and in some cases rely on it. I don't think it's merely an "implementation glitch." >>> >>> The difficulty I have with reification is that while there are proposals floating around for how it could be done, nobody really knows how it will eventually turn out, nor whether it will actually be done. If it is eventually done, there will legal and illegal constructs, constructs that generate warnings, and perhaps a style guide for how to use reified generics properly. >>> >>> Right now, we can *imagine* what these future rules might be, but it seems untenable to me to try to make today's code conform to those imaginary future rules, especially in the absence of tools to help support those rules. >>> >>>> If unmaskNull return a V, the code of equals will upcast the value from Object >>>> to V >>>> to just after downcast it from V to Object, >>>> I think it's better that unmask to return Object and upcast it to V when it's >>>> necessary. >>> Certainly there are cases where there's a redundant downcast and upcast. In a reified world, will this be a significant expense? Really, I have no idea. >>> >>> s'marks >> -- >> -Kurchi >> From forax at univ-mlv.fr Wed Apr 11 21:51:54 2012 From: forax at univ-mlv.fr (=?ISO-8859-1?Q?R=E9mi_Forax?=) Date: Wed, 11 Apr 2012 23:51:54 +0200 Subject: RFR 7116200: (cs) test/java/nio/charset/coders/StreamTimeout.java fails with "Address already in use" In-Reply-To: <4F85E342.8090307@oracle.com> References: <4F85C814.3080700@oracle.com> <4F85E342.8090307@oracle.com> Message-ID: <4F85FCFA.1020204@univ-mlv.fr> On 04/11/2012 10:02 PM, Alan Bateman wrote: > On 11/04/2012 19:06, Jim Gish wrote: >> Hi, >> >> Please review the following >> >> Description: >> >> The current code uses the fixed port of 22222 and the test fails if >> that port is in use. The patch creates the socket on any open port >> using new ServerSocket(0) and then determines the port in use with >> getLocalPort() on the socket. That port is then used when creating >> the client. This ensures the test won't fail with "address already >> in use". >> >> Also, all sockets are closed when done. (Would appreciate comments on >> whether I have engaged in overkill here, or not.) >> >> Patch: >> >> http://cr.openjdk.java.net/~jgish/7116200/webrev.00/ >> >> Tests run: jdk_nio3 -- all pass. >> >> Thanks, >> Jim Gish > I agree with R?mi, it would be better for Client to have a final field > for the port or the client Socket and have it passed to the > constructor. It would also be nice if Client implemented Closeable. > > One other thing is that try-with-resources with clean-up the > closing/exception handling in main. Also I think it would be better > not to catch the IOException at the end as that would mean the test > would pass when there is failure. > > -Alan. > Following the ideas of Alan, I've also removed the unnecessary code, waitABit is not called anymore, and I've inserted a join to be sure that the thread is finished before performing the cleanup. R?mi /* * Copyright (c) 2012, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it * under the terms of the GNU General Public License version 2 only, as * published by the Free Software Foundation. * * This code is distributed in the hope that it will be useful, but WITHOUT * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License * version 2 for more details (a copy is included in the LICENSE file that * accompanied this code). * * You should have received a copy of the GNU General Public License version * 2 along with this work; if not, write to the Free Software Foundation, * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. * * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA * or visit www.oracle.com if you need additional information or have any * questions. */ /* @test * @bug 4521942 * @summary Ensure that InputStreamReaders work properly * when the underlying byte stream times out */ import java.io.Closeable; import java.io.IOException; import java.io.InputStream; import java.io.InputStreamReader; import java.io.InterruptedIOException; import java.io.OutputStreamWriter; import java.io.PrintStream; import java.io.Reader; import java.io.Writer; import java.net.ServerSocket; import java.net.Socket; public class StreamTimeout { static final PrintStream log = System.err; static String charset = "US-ASCII"; private static class Client extends Thread implements Closeable { private final Socket so; Client(int port) throws IOException { so = new Socket("127.0.0.1", port); } @Override public void run() { try { Writer wr = new OutputStreamWriter(so.getOutputStream(), charset); wr.write("ab"); wr.flush(); } catch (IOException x) { log.print("Unexpected exception in writer: "); x.printStackTrace(); System.exit(1); } } @Override public void close() throws IOException { so.close(); } } private static void gobble(InputStream is, Reader rd, int ec, boolean force) throws Exception { int a = is.available(); boolean r = rd.ready(); log.print("" + a + " bytes available, " + "reader " + (r ? "" : "not ") + "ready"); if (!r && !force) { log.println(); return; } int c; try { c = rd.read(); } catch (InterruptedIOException x) { log.println(); throw x; } log.println(", read() ==> " + (c >= 0 ? ("'" + (char)c + "'" ): "EOF")); if (c != ec) throw new Exception("Incorrect value read: Expected " + ec + ", read " + (char)c); } public static void main(String[] args) throws Exception { if (args.length > 0) charset = args[0]; try(ServerSocket ss = new ServerSocket(0); Client cl = new Client(ss.getLocalPort())) { cl.start(); try(Socket s = ss.accept()) { s.setSoTimeout(150); try(InputStream is = s.getInputStream(); Reader rd = new InputStreamReader(is, charset)) { while (is.available() <= 0) Thread.yield(); gobble(is, rd, 'a', false); gobble(is, rd, 'b', false); gobble(is, rd, -1, false); boolean caught = false; try { gobble(is, rd, -1, true); } catch (InterruptedIOException e) { log.println("Read timed out, as expected"); caught = true; } if (!caught) { log.println("Read did not time out, test inapplicable"); return; } caught = false; try { gobble(is, rd, -1, true); } catch (InterruptedIOException x) { log.println("Second read timed out, as expected"); caught = true; } if (!caught) throw new Exception("Second read completed"); } } cl.join(); } } } From rob.mckenna at oracle.com Wed Apr 11 23:48:23 2012 From: rob.mckenna at oracle.com (Rob McKenna) Date: Thu, 12 Apr 2012 00:48:23 +0100 Subject: review request: 4244896: (process) Provide System.getPid(), System.killProcess(String pid) Message-ID: <4F861847.5080308@oracle.com> Hi folks, I'm hoping for some feedback on the above. Webrev: http://cr.openjdk.java.net/~robm/4244896/webrev.00/ This bug adds two abstract methods to Process.java with the intention of: 1) providing a facility to implement a destroyForcibly method. In practical terms this means provide a method that will send a SIGKILL to the subprocess in *nix environments as opposed to the SIGTERM that is currently being sent. (Windows' destroy() method effectively behaves like this already) 2) providing a facility to check whether the subprocess is still alive. As per the bug report the toString/pid work has been left to be completed separately. Notes: a) It has been pointed out to me that the addition of abstract methods to java.lang.Process should be discussed, particularly as to whether default methods should be provided. b) In src/windows/native/java/lang/ProcessImpl_md.c I chose to use WaitForSingleObject on the off chance that a process may choose to return STILL_ACTIVE as an error code. Thanks! -Rob From bradford.wetmore at oracle.com Thu Apr 12 00:14:34 2012 From: bradford.wetmore at oracle.com (bradford.wetmore at oracle.com) Date: Thu, 12 Apr 2012 00:14:34 +0000 Subject: hg: jdk8/tl/jdk: 7157903: JSSE client sockets are very slow Message-ID: <20120412001445.73EC24700B@hg.openjdk.java.net> Changeset: 10480cf00dcd Author: wetmore Date: 2012-04-11 17:12 -0700 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/10480cf00dcd 7157903: JSSE client sockets are very slow Reviewed-by: xuelei ! src/share/classes/sun/security/ssl/AppOutputStream.java ! src/share/classes/sun/security/ssl/EngineOutputRecord.java ! src/share/classes/sun/security/ssl/OutputRecord.java ! src/share/classes/sun/security/ssl/SSLSocketImpl.java From mandy.chung at oracle.com Thu Apr 12 02:09:09 2012 From: mandy.chung at oracle.com (Mandy Chung) Date: Wed, 11 Apr 2012 19:09:09 -0700 Subject: sun.management.Agent: the properties.putAll API may fail with ConcurrentModifcationException on multi-thread scenario In-Reply-To: <4F853485.7020607@linux.vnet.ibm.com> References: <4F853485.7020607@linux.vnet.ibm.com> Message-ID: <4F863945.7020701@oracle.com> On 4/11/2012 12:36 AM, Deven You wrote: > Hi core-libs-devs, > > I am not sure if sun.management.Agent belongs to jmx-dev mailing list, > if so please anyone tell me. > serviceability-dev (cc'ed) is the mailing list for this patch. > This issue is that the sun.management.Agent.loadManagementProperties() > will invoke properties.putAll which will throw > ConcurrentModifcationException if there are other threads which modify > the properties concurrently. > > I have made a patch[1] which synchronize the sysProps so that putAll > can work on multi-thread scenario. The test case is also available in > [1]. > I think this could still run into CME. System Properties is not a synchronized map and the setter methods (System.setProperty or Properties.put method) doesn't synchronize on the Properties object. Mandy > Thanks a lot! > > [1] http://cr.openjdk.java.net/~littlee/OJDK-256/webrev.00 > > From joe.darcy at oracle.com Thu Apr 12 03:00:26 2012 From: joe.darcy at oracle.com (Joe Darcy) Date: Wed, 11 Apr 2012 20:00:26 -0700 Subject: Integer.parseInt In-Reply-To: <4F85991B.40002@univ-mlv.fr> References: <4F85991B.40002@univ-mlv.fr> Message-ID: <4F86454A.90408@oracle.com> On 4/11/2012 7:45 AM, R?mi Forax wrote: > On 04/11/2012 04:18 PM, Benedict Elliott Smith wrote: >> Hi, >> >> Looking at the source code, it doesn't appear as though there is any >> reason >> to require the input be a String - only length() and charAt() are >> called, >> which are both declared by CharSequence. Is there a reason I can't >> fathom, >> or was it an oversight? It would be nice to widen the type for this (and >> potentially other equivalent methods). > > Integer.parseInt (1.0 or 1.1) pre-date CharSequence (1.4), > that's why it use a String an not a CharSequence. > > If you don't want to break all already compiled programs, > you can't just replace String by CharSequence because the exact > signature of the method > (with the parameter types) is encoded in the bytecode. > Joe Darcy write a cool blog post on that [1]. That is a kinder description of the blog post than I would expect :-) FYI, a fuller exploration of that issue in a broader context is written up in: http://cr.openjdk.java.net/~darcy/OpenJdkDevGuide/OpenJdkDevelopersGuide.v0.777.html > > The best here is to add new methods that takes a CharSequence, move > the code that use > a String in them and change the method that takes a String to delegate > to the one that use > a CharSequence. > > cheers, > R?mi > [1] https://blogs.oracle.com/darcy/entry/kinds_of_compatibility > Remi and I have in the past had differences of opinion on the utility of introducing CharSequence versions of such methods. One benefit to using a string is that the object is immutable; there are no time-of-check-versus-time-of-use conditions to worry about. Robust code should arguably work sensibly even with mutable CharSequences, and the easiest way to ensure that is to call the toString method of a CharSequence passed as a parameter. -Joe From xueming.shen at oracle.com Thu Apr 12 04:27:23 2012 From: xueming.shen at oracle.com (Xueming Shen) Date: Wed, 11 Apr 2012 21:27:23 -0700 Subject: Codereview request for 7152690: Initialization error with charset SJIS_0213 when security manager is enabled Message-ID: <4F8659AB.7000100@oracle.com> Hi Please help codereview the change for #7152690 http://cr.openjdk.java.net/~sherman/7152690/webrev This is an overlook when we changed SJIS_0213 implementation in 7. The "resource reading" obviously needs to be wrapped in doPrivileged block. Thanks! -Sherman From zhouyx at linux.vnet.ibm.com Thu Apr 12 05:40:11 2012 From: zhouyx at linux.vnet.ibm.com (Sean Chou) Date: Thu, 12 Apr 2012 13:40:11 +0800 Subject: Replace the static error string in ZIP_Put_In_Cache0 with on stack memory In-Reply-To: <4F85E4E1.3040906@oracle.com> References: <4F82B361.4080806@oracle.com> <4F83EB02.7050708@oracle.com> <4F85E4E1.3040906@oracle.com> Message-ID: Hi Alan, Many thanks. I updated the patch, ZIP_Open frees the error message and set "Zip file open error". The new webrev is : http://cr.openjdk.java.net/~zhouyx/7159982/webrev.01/ Please take a look once more. On Thu, Apr 12, 2012 at 4:09 AM, Alan Bateman wrote: > On 11/04/2012 15:58, Sean Chou wrote: > >> Hi hotspot guys, >> >> Would any one like to take a look at this? I'm trying to fix a >> potential race in ZIP_Open, it is found classLoader.cpp uses this function. >> So a webrev for hotspot is made as well, but I need a sponsor from hotspot >> as suggested by Alan Bateman. >> >> The start of this thread is http://mail.openjdk.java.net/** >> pipermail/core-libs-dev/2012-**April/009766.html. >> The webrevs: http://cr.openjdk.java.net/~** >> zhouyx/7159982/webrev-hotspot.**00/< >> http://cr.openjdk.java.net/%**7Ezhouyx/7159982/webrev-**hotspot.00/ >> > >> and http://cr.openjdk.java.net/~**zhouyx/7159982/webrev.00/< >> http://cr.openjdk.java.net/%**7Ezhouyx/7159982/webrev.00/> >> . >> >> >> And, I found JDK_Version::is_gte_jdk18x_**version suggested by Alan >> does not exist in hotspot yet, shall I add it to the patch too ? >> > I had a brief chat with Coleen Phillimore about this. One suggestion that > would avoid HotSpot changes is to change ZIP_Open so that it doesn't return > an error message or returns something fixed. It's not used in the VM anyway > (as per Coleen's reply). We need the error message for the java.util.zip > APIs but that doesn't go through ZIP_Open so it means it can be freed and > *pmsg = NULL returned (or a pointer to one fixed generic message). > > -Alan > -- Best Regards, Sean Chou From xueming.shen at oracle.com Thu Apr 12 06:40:31 2012 From: xueming.shen at oracle.com (Xueming Shen) Date: Wed, 11 Apr 2012 23:40:31 -0700 Subject: Codereview request 7156873: (zipfs) FileSystems.newFileSystem(uri, env) fails for uri with escaped octets Message-ID: <4F8678DF.6090004@oracle.com> Hi Please help review the fix for 7156873. It appears URI.getRawSchemeSpecificPart() is the more appropriate method to use to obtain the "scheme", which returns the scheme in its "quoted" form. http://cr.openjdk.java.net/~sherman/7156873/webrev Thanks, -Sherman From littlee at linux.vnet.ibm.com Thu Apr 12 07:07:15 2012 From: littlee at linux.vnet.ibm.com (littlee at linux.vnet.ibm.com) Date: Thu, 12 Apr 2012 07:07:15 +0000 Subject: hg: jdk8/tl/jdk: 6610897: New constructor in sun.tools.java.ClassPath builds a path using File.separator instead of File.pathSeparator Message-ID: <20120412070738.1827447022@hg.openjdk.java.net> Changeset: c98a013ec628 Author: youdwei Date: 2012-04-12 15:04 +0800 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/c98a013ec628 6610897: New constructor in sun.tools.java.ClassPath builds a path using File.separator instead of File.pathSeparator Reviewed-by: alanb ! src/share/classes/sun/tools/java/ClassPath.java + test/sun/tools/classpath/RMICClassPathTest.java From littlee at linux.vnet.ibm.com Thu Apr 12 07:12:38 2012 From: littlee at linux.vnet.ibm.com (Charles Lee) Date: Thu, 12 Apr 2012 15:12:38 +0800 Subject: New constructor in sun.tools.java.ClassPath builds a path using File.separator instead of File.pathSeparatorChar In-Reply-To: <4F853662.8020404@linux.vnet.ibm.com> References: <4F82892C.7090709@linux.vnet.ibm.com> <4F82A5FC.7080601@oracle.com> <4F82ACCA.800@linux.vnet.ibm.com> <4F83EB5C.7040205@oracle.com> <4F853662.8020404@linux.vnet.ibm.com> Message-ID: <4F868066.8010602@linux.vnet.ibm.com> On 04/11/2012 03:44 PM, Deven You wrote: > On 04/10/2012 04:12 PM, Alan Bateman wrote: >> On 09/04/2012 10:32, Deven You wrote: >>> : >>> >>> The issue is reported by one of our test team which maintains a set >>> of ORB test cases. >> Okay but I guess I'm still a bit curious as it's not obvious that >> rmic (or rmic --iiop) invokes toString, maybe this is a white box >> test or a test that is using sun.tools.java.*? >> >> -Alan. >> > Hi Alan, > > Though I am not very sure, I guess it is a white box test. I find some > code snippet which may cause this errors, like: > > sun.misc.URLClassPath.pathToURLs(classPath.toString())); > > I think if anyone use above like code, it will fail. > > Thanks a lot! > Hi Deven, The patch is committed @ Changeset: c98a013ec628 Author: youdwei Date: 2012-04-12 15:04 +0800 URL:http://hg.openjdk.java.net/jdk8/tl/jdk/rev/c98a013ec628 6610897: New constructor in sun.tools.java.ClassPath builds a path using File.separator instead of File.pathSeparator Reviewed-by: alanb ! src/share/classes/sun/tools/java/ClassPath.java + test/sun/tools/classpath/RMICClassPathTest.java Please verify it. -- Yours Charles From youdwei at linux.vnet.ibm.com Thu Apr 12 07:22:01 2012 From: youdwei at linux.vnet.ibm.com (Deven You) Date: Thu, 12 Apr 2012 15:22:01 +0800 Subject: New constructor in sun.tools.java.ClassPath builds a path using File.separator instead of File.pathSeparatorChar In-Reply-To: <4F868066.8010602@linux.vnet.ibm.com> References: <4F82892C.7090709@linux.vnet.ibm.com> <4F82A5FC.7080601@oracle.com> <4F82ACCA.800@linux.vnet.ibm.com> <4F83EB5C.7040205@oracle.com> <4F853662.8020404@linux.vnet.ibm.com> <4F868066.8010602@linux.vnet.ibm.com> Message-ID: <4F868299.4000403@linux.vnet.ibm.com> I have verified this commit. Thanks Alan and Charles! On 04/12/2012 03:12 PM, Charles Lee wrote: > On 04/11/2012 03:44 PM, Deven You wrote: >> On 04/10/2012 04:12 PM, Alan Bateman wrote: >>> On 09/04/2012 10:32, Deven You wrote: >>>> : >>>> >>>> The issue is reported by one of our test team which maintains a >>>> set of ORB test cases. >>> Okay but I guess I'm still a bit curious as it's not obvious that >>> rmic (or rmic --iiop) invokes toString, maybe this is a white box >>> test or a test that is using sun.tools.java.*? >>> >>> -Alan. >>> >> Hi Alan, >> >> Though I am not very sure, I guess it is a white box test. I find >> some code snippet which may cause this errors, like: >> >> sun.misc.URLClassPath.pathToURLs(classPath.toString())); >> >> I think if anyone use above like code, it will fail. >> >> Thanks a lot! >> > Hi Deven, > > The patch is committed @ > > Changeset: c98a013ec628 > Author: youdwei > Date: 2012-04-12 15:04 +0800 > URL:http://hg.openjdk.java.net/jdk8/tl/jdk/rev/c98a013ec628 > > 6610897: New constructor in sun.tools.java.ClassPath builds a path > using File.separator instead of File.pathSeparator > Reviewed-by: alanb > > ! src/share/classes/sun/tools/java/ClassPath.java > + test/sun/tools/classpath/RMICClassPathTest.java > > > > Please verify it. > -- Best Regards, Deven From chris.hegarty at oracle.com Thu Apr 12 07:27:03 2012 From: chris.hegarty at oracle.com (Chris Hegarty) Date: Thu, 12 Apr 2012 08:27:03 +0100 Subject: RFR 7116200: (cs) test/java/nio/charset/coders/StreamTimeout.java fails with "Address already in use" In-Reply-To: <4F85FCFA.1020204@univ-mlv.fr> References: <4F85C814.3080700@oracle.com> <4F85E342.8090307@oracle.com> <4F85FCFA.1020204@univ-mlv.fr> Message-ID: <4F8683C7.7050103@oracle.com> This is looking much better, thank you. I know it was there already, but I think we should remove the System.exit. It doesn't play well with samevm/agentvm mode. If this is deemed important enough ( and I'm not sure it is ) then a volatile failed/unexpected field may be appropriate, otherwise just remove. -Chris. On 11/04/12 22:51, R?mi Forax wrote: > On 04/11/2012 10:02 PM, Alan Bateman wrote: >> On 11/04/2012 19:06, Jim Gish wrote: >>> Hi, >>> >>> Please review the following >>> >>> Description: >>> >>> The current code uses the fixed port of 22222 and the test fails if >>> that port is in use. The patch creates the socket on any open port >>> using new ServerSocket(0) and then determines the port in use with >>> getLocalPort() on the socket. That port is then used when creating >>> the client. This ensures the test won't fail with "address already in >>> use". >>> >>> Also, all sockets are closed when done. (Would appreciate comments on >>> whether I have engaged in overkill here, or not.) >>> >>> Patch: >>> >>> http://cr.openjdk.java.net/~jgish/7116200/webrev.00/ >>> >>> Tests run: jdk_nio3 -- all pass. >>> >>> Thanks, >>> Jim Gish >> I agree with R?mi, it would be better for Client to have a final field >> for the port or the client Socket and have it passed to the >> constructor. It would also be nice if Client implemented Closeable. >> >> One other thing is that try-with-resources with clean-up the >> closing/exception handling in main. Also I think it would be better >> not to catch the IOException at the end as that would mean the test >> would pass when there is failure. >> >> -Alan. >> > > Following the ideas of Alan, I've also removed the unnecessary code, > waitABit is not called anymore, > and I've inserted a join to be sure that the thread is finished before > performing the cleanup. > > R?mi > > > /* > * Copyright (c) 2012, Oracle and/or its affiliates. All rights reserved. > * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. > * > * This code is free software; you can redistribute it and/or modify it > * under the terms of the GNU General Public License version 2 only, as > * published by the Free Software Foundation. > * > * This code is distributed in the hope that it will be useful, but WITHOUT > * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or > * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License > * version 2 for more details (a copy is included in the LICENSE file that > * accompanied this code). > * > * You should have received a copy of the GNU General Public License version > * 2 along with this work; if not, write to the Free Software Foundation, > * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. > * > * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA > * or visit www.oracle.com if you need additional information or have any > * questions. > */ > > /* @test > * @bug 4521942 > * @summary Ensure that InputStreamReaders work properly > * when the underlying byte stream times out > */ > > import java.io.Closeable; > import java.io.IOException; > import java.io.InputStream; > import java.io.InputStreamReader; > import java.io.InterruptedIOException; > import java.io.OutputStreamWriter; > import java.io.PrintStream; > import java.io.Reader; > import java.io.Writer; > import java.net.ServerSocket; > import java.net.Socket; > > public class StreamTimeout { > static final PrintStream log = System.err; > static String charset = "US-ASCII"; > > private static class Client extends Thread implements Closeable { > private final Socket so; > > Client(int port) throws IOException { > so = new Socket("127.0.0.1", port); > } > > @Override > public void run() { > try { > Writer wr = new OutputStreamWriter(so.getOutputStream(), > charset); > wr.write("ab"); > wr.flush(); > } catch (IOException x) { > log.print("Unexpected exception in writer: "); > x.printStackTrace(); > System.exit(1); > } > } > > @Override > public void close() throws IOException { > so.close(); > } > } > > private static void gobble(InputStream is, Reader rd, > int ec, boolean force) > throws Exception > { > int a = is.available(); > boolean r = rd.ready(); > log.print("" + a + " bytes available, " > + "reader " + (r ? "" : "not ") + "ready"); > if (!r && !force) { > log.println(); > return; > } > int c; > try { > c = rd.read(); > } catch (InterruptedIOException x) { > log.println(); > throw x; > } > log.println(", read() ==> " > + (c >= 0 ? ("'" + (char)c + "'" ): "EOF")); > if (c != ec) > throw new Exception("Incorrect value read: Expected " > + ec + ", read " + (char)c); > } > > public static void main(String[] args) throws Exception { > > if (args.length > 0) > charset = args[0]; > > try(ServerSocket ss = new ServerSocket(0); > Client cl = new Client(ss.getLocalPort())) { > > cl.start(); > > try(Socket s = ss.accept()) { > s.setSoTimeout(150); > > try(InputStream is = s.getInputStream(); > Reader rd = new InputStreamReader(is, charset)) { > > while (is.available() <= 0) > Thread.yield(); > > gobble(is, rd, 'a', false); > gobble(is, rd, 'b', false); > gobble(is, rd, -1, false); > > boolean caught = false; > try { > gobble(is, rd, -1, true); > } catch (InterruptedIOException e) { > log.println("Read timed out, as expected"); > caught = true; > } > if (!caught) { > log.println("Read did not time out, test inapplicable"); > return; > } > > caught = false; > try { > gobble(is, rd, -1, true); > } catch (InterruptedIOException x) { > log.println("Second read timed out, as expected"); > caught = true; > } > if (!caught) > throw new Exception("Second read completed"); > } > } > > cl.join(); > } > } > > } > > > From chris.hegarty at oracle.com Thu Apr 12 07:56:58 2012 From: chris.hegarty at oracle.com (Chris Hegarty) Date: Thu, 12 Apr 2012 08:56:58 +0100 Subject: Codereview request 7156873: (zipfs) FileSystems.newFileSystem(uri, env) fails for uri with escaped octets In-Reply-To: <4F8678DF.6090004@oracle.com> References: <4F8678DF.6090004@oracle.com> Message-ID: <4F868ACA.9010906@oracle.com> Looks fine to me Sherman. -Chris. On 12/04/12 07:40, Xueming Shen wrote: > Hi > > Please help review the fix for 7156873. It appears > URI.getRawSchemeSpecificPart() is the more appropriate > method to use to obtain the "scheme", which returns the scheme in its > "quoted" form. > > http://cr.openjdk.java.net/~sherman/7156873/webrev > > Thanks, > -Sherman From Alan.Bateman at oracle.com Thu Apr 12 08:24:35 2012 From: Alan.Bateman at oracle.com (Alan Bateman) Date: Thu, 12 Apr 2012 09:24:35 +0100 Subject: Replace the static error string in ZIP_Put_In_Cache0 with on stack memory In-Reply-To: References: <4F82B361.4080806@oracle.com> <4F83EB02.7050708@oracle.com> <4F85E4E1.3040906@oracle.com> Message-ID: <4F869143.1060101@oracle.com> On 12/04/2012 06:40, Sean Chou wrote: > Hi Alan, > > Many thanks. > > I updated the patch, ZIP_Open frees the error message and set "Zip > file open error". > > The new webrev is : > http://cr.openjdk.java.net/~zhouyx/7159982/webrev.01/ > > > Please take a look once more. This looks much better. I think we'll need to add comments to the ZIP_* functions so that it's clear to anyone using them when they need to free the error message and then they don't. One implementation nit at zip_util.c L876 where it should check if pmsg is NULL and I think the tests should be reversed so that its: if (file != NULL && pmsg != NULL && *pmsg != NULL) { ... } One other minor nit is L875 where there is a space on either side of the "*", best to keep the style consistent. -Alan. From Alan.Bateman at oracle.com Thu Apr 12 08:26:44 2012 From: Alan.Bateman at oracle.com (Alan Bateman) Date: Thu, 12 Apr 2012 09:26:44 +0100 Subject: New constructor in sun.tools.java.ClassPath builds a path using File.separator instead of File.pathSeparatorChar In-Reply-To: <4F868299.4000403@linux.vnet.ibm.com> References: <4F82892C.7090709@linux.vnet.ibm.com> <4F82A5FC.7080601@oracle.com> <4F82ACCA.800@linux.vnet.ibm.com> <4F83EB5C.7040205@oracle.com> <4F853662.8020404@linux.vnet.ibm.com> <4F868066.8010602@linux.vnet.ibm.com> <4F868299.4000403@linux.vnet.ibm.com> Message-ID: <4F8691C4.8050107@oracle.com> On 12/04/2012 08:22, Deven You wrote: > > I have verified this commit. Thanks Alan and Charles! The change-set that Charles pushed added test/sun/tools/classpath/ RMICClassPathTest.java but I didn't see it in the original webrev. I see now that your original mail had the proposed test in a separate webrev but I missed that. Anyway, one comment is that test has been added to an odd location that doesn't correspond to where the fix was made. I think test/sun/rmi/rmic would have been a more suitable location. -Alan. From Alan.Bateman at oracle.com Thu Apr 12 08:35:26 2012 From: Alan.Bateman at oracle.com (Alan Bateman) Date: Thu, 12 Apr 2012 09:35:26 +0100 Subject: Codereview request 7156873: (zipfs) FileSystems.newFileSystem(uri, env) fails for uri with escaped octets In-Reply-To: <4F8678DF.6090004@oracle.com> References: <4F8678DF.6090004@oracle.com> Message-ID: <4F8693CE.3040406@oracle.com> On 12/04/2012 07:40, Xueming Shen wrote: > Hi > > Please help review the fix for 7156873. It appears > URI.getRawSchemeSpecificPart() is the more appropriate > method to use to obtain the "scheme", which returns the scheme in its > "quoted" form. > > http://cr.openjdk.java.net/~sherman/7156873/webrev This looks okay to me. -Alan. From Alan.Bateman at oracle.com Thu Apr 12 08:38:10 2012 From: Alan.Bateman at oracle.com (Alan Bateman) Date: Thu, 12 Apr 2012 09:38:10 +0100 Subject: Codereview request for 7152690: Initialization error with charset SJIS_0213 when security manager is enabled In-Reply-To: <4F8659AB.7000100@oracle.com> References: <4F8659AB.7000100@oracle.com> Message-ID: <4F869472.2040203@oracle.com> On 12/04/2012 05:27, Xueming Shen wrote: > Hi > > Please help codereview the change for #7152690 > > http://cr.openjdk.java.net/~sherman/7152690/webrev > > This is an overlook when we changed SJIS_0213 implementation in 7. The > "resource reading" > obviously needs to be wrapped in doPrivileged block. This looks okay to me. -Alan. From lists at laerad.com Thu Apr 12 08:57:36 2012 From: lists at laerad.com (Benedict Elliott Smith) Date: Thu, 12 Apr 2012 09:57:36 +0100 Subject: Integer.parseInt In-Reply-To: <4F86454A.90408@oracle.com> References: <4F85991B.40002@univ-mlv.fr> <4F86454A.90408@oracle.com> Message-ID: > > Remi and I have in the past had differences of opinion on the utility of > introducing CharSequence versions of such methods. > > One benefit to using a string is that the object is immutable; there are > no time-of-check-versus-time-of-**use conditions to worry about. Robust > code should arguably work sensibly even with mutable CharSequences, and the > easiest way to ensure that is to call the toString method of a CharSequence > passed as a parameter. > > -Joe > It isn't typical to require that arguments to a method be immutable, and it is generally implicit that any arguments to a method that are mutated during the method's execution result in undefined output (to perhaps varying degrees). In an imperative object oriented language, attempting to eliminate any possibility of argument mutability is surely a doomed endeavour. I think in this case it is reasonable to leave it to the user to ensure that the input remains consistent for the duration of the call. It can be documented if necessary, but as I say I think all imperative methods come with that caveat by definition. Calling the toString() method as a solution is really no better than asking the user to do the same, albeit a little neater; the only reason a CharSequence method would be preferred is that you can avoid unnecessary object allocation. For a very lightweight method like parseInt, this can dramatically reduce the impact of making the call. From Alan.Bateman at oracle.com Thu Apr 12 09:05:26 2012 From: Alan.Bateman at oracle.com (Alan Bateman) Date: Thu, 12 Apr 2012 10:05:26 +0100 Subject: review request: 4244896: (process) Provide System.getPid(), System.killProcess(String pid) In-Reply-To: <4F861847.5080308@oracle.com> References: <4F861847.5080308@oracle.com> Message-ID: <4F869AD6.7010903@oracle.com> On 12/04/2012 00:48, Rob McKenna wrote: > Hi folks, > > I'm hoping for some feedback on the above. Webrev: > > http://cr.openjdk.java.net/~robm/4244896/webrev.00/ Thanks for taking this one on, a destroyForcibly is really useful to have (destroy was always misleading given that that is was actually a SIGTERM). The isAlive is also useful, another choice would be a waitFor that takes a timeout. As this patch adds two abstract methods it means there will be a source compatibility issue. Process has been in the platform since JDK1.0 so it likely there are other implementation, perhaps mocked. For destroyForcibly then a reasonable default could invoke the existing destroy but this would need to be specified. A possible default for isAlive is to invoke exitValue and mask the IAE when it hasn't terminated. On the javadoc then destroyForcibly needs to specify the return value, I think I missed this in the original patch that I gave you off-list. Having it return the Process is very useful as it allows for method invocation chaining, exitCode = p.destroyForcibly().waitFor(). I also think destroyForcibly needs to set expectation that the process may not terminate immediately (isAlive might still return true for a brief period for example). The duplicate code in UNIXProcess.java.* is a reminder that we could combine the common code into something like a private package AbstractUNIXPorcess that would be extended by UNIXProcess, not for this patch of course. Looks like there is inconsistent use of @Override, you've added it to the isAlive implementation but not the others. Looks like UNIXProcess_md.c is straying beyond 80c so you might want to move the force parameter to the next line. Overall I think the implementation looks okay but one thing to think about is errors, WaitForSingleObject can fail with other errors, the return from kill is not checked. I don't have time to study the test is detail just now but I suspect invoking "./ProcessKillTest.sh" will need to change as the script will be in test.src and may not have execute permission. Also I see tests for specific exit codes which may be problematic (and will need to be updated for MacOSX). For isAlive then it may be better to test it by adding to existing tests. -Alan. From martin.desruisseaux at geomatys.fr Thu Apr 12 09:35:06 2012 From: martin.desruisseaux at geomatys.fr (Martin Desruisseaux) Date: Thu, 12 Apr 2012 11:35:06 +0200 Subject: Integer.parseInt In-Reply-To: References: <4F85991B.40002@univ-mlv.fr> <4F86454A.90408@oracle.com> Message-ID: <4F86A1CA.3070008@geomatys.fr> Le 12/04/12 10:57, Benedict Elliott Smith a ?crit : >> I think in this case it is reasonable to leave it to the user to ensure >> that the input remains consistent for the duration of the call. It can be >> documented if necessary, but as I say I think all imperative methods come >> with that caveat by definition. Calling the toString() method as a solution >> is really no better than asking the user to do the same, albeit a little >> neater; the only reason a CharSequence method would be preferred is that >> you can avoid unnecessary object allocation. For a very lightweight method >> like parseInt, this can dramatically reduce the impact of making the call. We faced this issue in our project when parsing OpenStreetMap data (an open source alternative to Google Map). The amount of integers to parse is so large that the calls to the 'toString()' method has been identified as a significant bottleneck by the NetBeans profiler. We tried a copy of the 'parseInt' method with the String argument replaced by CharSequence, and noticed a significant performance gain. Martin From youdwei at linux.vnet.ibm.com Thu Apr 12 10:48:39 2012 From: youdwei at linux.vnet.ibm.com (Deven You) Date: Thu, 12 Apr 2012 18:48:39 +0800 Subject: New constructor in sun.tools.java.ClassPath builds a path using File.separator instead of File.pathSeparatorChar In-Reply-To: <4F8691C4.8050107@oracle.com> References: <4F82892C.7090709@linux.vnet.ibm.com> <4F82A5FC.7080601@oracle.com> <4F82ACCA.800@linux.vnet.ibm.com> <4F83EB5C.7040205@oracle.com> <4F853662.8020404@linux.vnet.ibm.com> <4F868066.8010602@linux.vnet.ibm.com> <4F868299.4000403@linux.vnet.ibm.com> <4F8691C4.8050107@oracle.com> Message-ID: <4F86B307.8090009@linux.vnet.ibm.com> Hi Alan, I choose the test/sun/tools/classpath/ RMICClassPathTest.java because the fix is made in sun.tools.java.ClassPath. However the test case uses BatchEnvironment.createClassPath to create a new ClassPath. I think test/sun/tools/classpath/ is more closer to sun.tools.java.ClassPath. On 04/12/2012 04:26 PM, Alan Bateman wrote: > On 12/04/2012 08:22, Deven You wrote: >> >> I have verified this commit. Thanks Alan and Charles! > The change-set that Charles pushed added test/sun/tools/classpath/ > RMICClassPathTest.java but I didn't see it in the original webrev. I > see now that your original mail had the proposed test in a separate > webrev but I missed that. Anyway, one comment is that test has been > added to an odd location that doesn't correspond to where the fix was > made. I think test/sun/rmi/rmic would have been a more suitable location. > > -Alan. -- Best Regards, Deven From Ulf.Zibis at gmx.de Thu Apr 12 11:16:37 2012 From: Ulf.Zibis at gmx.de (Ulf Zibis) Date: Thu, 12 Apr 2012 13:16:37 +0200 Subject: Integer.parseInt In-Reply-To: <4F86A1CA.3070008@geomatys.fr> References: <4F85991B.40002@univ-mlv.fr> <4F86454A.90408@oracle.com> <4F86A1CA.3070008@geomatys.fr> Message-ID: <4F86B995.8030107@gmx.de> +1 to Benedict and Martin -Ulf Am 12.04.2012 11:35, schrieb Martin Desruisseaux: > Le 12/04/12 10:57, Benedict Elliott Smith a ?crit : >>> I think in this case it is reasonable to leave it to the user to ensure >>> that the input remains consistent for the duration of the call. It can be >>> documented if necessary, but as I say I think all imperative methods come >>> with that caveat by definition. Calling the toString() method as a solution >>> is really no better than asking the user to do the same, albeit a little >>> neater; the only reason a CharSequence method would be preferred is that >>> you can avoid unnecessary object allocation. For a very lightweight method >>> like parseInt, this can dramatically reduce the impact of making the call. > > We faced this issue in our project when parsing OpenStreetMap data (an open source alternative to > Google Map). The amount of integers to parse is so large that the calls to the 'toString()' method > has been identified as a significant bottleneck by the NetBeans profiler. We tried a copy of the > 'parseInt' method with the String argument replaced by CharSequence, and noticed a significant > performance gain. > > Martin > > From Alan.Bateman at oracle.com Thu Apr 12 11:42:36 2012 From: Alan.Bateman at oracle.com (Alan Bateman) Date: Thu, 12 Apr 2012 12:42:36 +0100 Subject: RFR 7116200: (cs) test/java/nio/charset/coders/StreamTimeout.java fails with "Address already in use" In-Reply-To: <4F85FCFA.1020204@univ-mlv.fr> References: <4F85C814.3080700@oracle.com> <4F85E342.8090307@oracle.com> <4F85FCFA.1020204@univ-mlv.fr> Message-ID: <4F86BFAC.9000506@oracle.com> On 11/04/2012 22:51, R?mi Forax wrote: > > Following the ideas of Alan, I've also removed the unnecessary code, > waitABit is not called anymore, > and I've inserted a join to be sure that the thread is finished before > performing the cleanup. > > R?mi Thanks R?mi, this looks good. Just some background on this one. Jim Gish just recently moved into the JDK team in Oracle (he was in WebLogic land). I suggested a few bugs to get used to building the JDK, running the tests, learning the processes etc. Now that you've clean-ed up this test it means I need to go find another one. No problem, there are plenty to go around. -Alan From forax at univ-mlv.fr Thu Apr 12 11:45:47 2012 From: forax at univ-mlv.fr (=?ISO-8859-1?Q?R=E9mi_Forax?=) Date: Thu, 12 Apr 2012 13:45:47 +0200 Subject: RFR 7116200: (cs) test/java/nio/charset/coders/StreamTimeout.java fails with "Address already in use" In-Reply-To: <4F86BFAC.9000506@oracle.com> References: <4F85C814.3080700@oracle.com> <4F85E342.8090307@oracle.com> <4F85FCFA.1020204@univ-mlv.fr> <4F86BFAC.9000506@oracle.com> Message-ID: <4F86C06B.10007@univ-mlv.fr> On 04/12/2012 01:42 PM, Alan Bateman wrote: > On 11/04/2012 22:51, R?mi Forax wrote: >> >> Following the ideas of Alan, I've also removed the unnecessary code, >> waitABit is not called anymore, >> and I've inserted a join to be sure that the thread is finished >> before performing the cleanup. >> >> R?mi > Thanks R?mi, this looks good. > > Just some background on this one. Jim Gish just recently moved into > the JDK team in Oracle (he was in WebLogic land). I suggested a few > bugs to get used to building the JDK, running the tests, learning the > processes etc. Now that you've clean-ed up this test it means I need > to go find another one. No problem, there are plenty to go around. > > -Alan oops, sorry, so welcome on board Jim :) R?mi From zhouyx at linux.vnet.ibm.com Thu Apr 12 15:14:13 2012 From: zhouyx at linux.vnet.ibm.com (Sean Chou) Date: Thu, 12 Apr 2012 23:14:13 +0800 Subject: Replace the static error string in ZIP_Put_In_Cache0 with on stack memory In-Reply-To: <4F869143.1060101@oracle.com> References: <4F82B361.4080806@oracle.com> <4F83EB02.7050708@oracle.com> <4F85E4E1.3040906@oracle.com> <4F869143.1060101@oracle.com> Message-ID: Hi Alan, I made a new webrev, added the comments and the 2 other modification. It's now : http://cr.openjdk.java.net/~zhouyx/7159982/webrev.02/ On Thu, Apr 12, 2012 at 4:24 PM, Alan Bateman wrote: > On 12/04/2012 06:40, Sean Chou wrote: > >> Hi Alan, >> >> Many thanks. >> >> I updated the patch, ZIP_Open frees the error message and set "Zip >> file open error". >> >> The new webrev is : http://cr.openjdk.java.net/~** >> zhouyx/7159982/webrev.01/< >> http://cr.openjdk.java.net/%**7Ezhouyx/7159982/webrev.01/ >> > >> >> >> Please take a look once more. >> > This looks much better. I think we'll need to add comments to the ZIP_* > functions so that it's clear to anyone using them when they need to free > the error message and then they don't. > > One implementation nit at zip_util.c L876 where it should check if pmsg is > NULL and I think the tests should be reversed so that its: > > if (file != NULL && pmsg != NULL && *pmsg != NULL) { ... } > > One other minor nit is L875 where there is a space on either side of the > "*", best to keep the style consistent. > > -Alan. > -- Best Regards, Sean Chou From jim.gish at oracle.com Thu Apr 12 15:33:28 2012 From: jim.gish at oracle.com (Jim Gish) Date: Thu, 12 Apr 2012 11:33:28 -0400 Subject: RFR 7116200: (cs) test/java/nio/charset/coders/StreamTimeout.java fails with "Address already in use" In-Reply-To: <4F86C06B.10007@univ-mlv.fr> References: <4F85C814.3080700@oracle.com> <4F85E342.8090307@oracle.com> <4F85FCFA.1020204@univ-mlv.fr> <4F86BFAC.9000506@oracle.com> <4F86C06B.10007@univ-mlv.fr> Message-ID: <4F86F5C8.5020706@oracle.com> Thanks, guys. I appreciate the feedback (and the welcome R?mi). I'll pick it up from here, update the copyright, double check the formatting, and send it off for final review and submission by Alan or Chris. Thanks again, Jim On 04/12/2012 07:45 AM, R?mi Forax wrote: > On 04/12/2012 01:42 PM, Alan Bateman wrote: >> On 11/04/2012 22:51, R?mi Forax wrote: >>> >>> Following the ideas of Alan, I've also removed the unnecessary code, >>> waitABit is not called anymore, >>> and I've inserted a join to be sure that the thread is finished >>> before performing the cleanup. >>> >>> R?mi >> Thanks R?mi, this looks good. >> >> Just some background on this one. Jim Gish just recently moved into >> the JDK team in Oracle (he was in WebLogic land). I suggested a few >> bugs to get used to building the JDK, running the tests, learning the >> processes etc. Now that you've clean-ed up this test it means I need >> to go find another one. No problem, there are plenty to go around. >> >> -Alan > > oops, sorry, > so welcome on board Jim :) > > R?mi > From huizhe.wang at oracle.com Thu Apr 12 15:38:18 2012 From: huizhe.wang at oracle.com (huizhe.wang at oracle.com) Date: Thu, 12 Apr 2012 15:38:18 +0000 Subject: hg: jdk8/tl/jaxp: 7160496: Rename JDK8 JAXP source directory Message-ID: <20120412153825.D68E74702B@hg.openjdk.java.net> Changeset: 7b89fed7212b Author: joehw Date: 2012-04-12 08:38 -0700 URL: http://hg.openjdk.java.net/jdk8/tl/jaxp/rev/7b89fed7212b 7160496: Rename JDK8 JAXP source directory Summary: moving src/share/classes to src Reviewed-by: ohair ! build.xml ! make/scripts/update_src.sh + src/com/sun/java_cup/internal/runtime/Scanner.java + src/com/sun/java_cup/internal/runtime/Symbol.java + src/com/sun/java_cup/internal/runtime/lr_parser.java + src/com/sun/java_cup/internal/runtime/virtual_parse_stack.java + src/com/sun/org/apache/bcel/internal/Constants.java + src/com/sun/org/apache/bcel/internal/ExceptionConstants.java + src/com/sun/org/apache/bcel/internal/Repository.java + src/com/sun/org/apache/bcel/internal/classfile/AccessFlags.java + src/com/sun/org/apache/bcel/internal/classfile/Attribute.java + src/com/sun/org/apache/bcel/internal/classfile/AttributeReader.java + src/com/sun/org/apache/bcel/internal/classfile/ClassFormatException.java + src/com/sun/org/apache/bcel/internal/classfile/ClassParser.java + src/com/sun/org/apache/bcel/internal/classfile/Code.java + src/com/sun/org/apache/bcel/internal/classfile/CodeException.java + src/com/sun/org/apache/bcel/internal/classfile/Constant.java + src/com/sun/org/apache/bcel/internal/classfile/ConstantCP.java + src/com/sun/org/apache/bcel/internal/classfile/ConstantClass.java + src/com/sun/org/apache/bcel/internal/classfile/ConstantDouble.java + src/com/sun/org/apache/bcel/internal/classfile/ConstantFieldref.java + src/com/sun/org/apache/bcel/internal/classfile/ConstantFloat.java + src/com/sun/org/apache/bcel/internal/classfile/ConstantInteger.java + src/com/sun/org/apache/bcel/internal/classfile/ConstantInterfaceMethodref.java + src/com/sun/org/apache/bcel/internal/classfile/ConstantLong.java + src/com/sun/org/apache/bcel/internal/classfile/ConstantMethodref.java + src/com/sun/org/apache/bcel/internal/classfile/ConstantNameAndType.java + src/com/sun/org/apache/bcel/internal/classfile/ConstantObject.java + src/com/sun/org/apache/bcel/internal/classfile/ConstantPool.java + src/com/sun/org/apache/bcel/internal/classfile/ConstantString.java + src/com/sun/org/apache/bcel/internal/classfile/ConstantUtf8.java + src/com/sun/org/apache/bcel/internal/classfile/ConstantValue.java + src/com/sun/org/apache/bcel/internal/classfile/Deprecated.java + src/com/sun/org/apache/bcel/internal/classfile/DescendingVisitor.java + src/com/sun/org/apache/bcel/internal/classfile/EmptyVisitor.java + src/com/sun/org/apache/bcel/internal/classfile/ExceptionTable.java + src/com/sun/org/apache/bcel/internal/classfile/Field.java + src/com/sun/org/apache/bcel/internal/classfile/FieldOrMethod.java + src/com/sun/org/apache/bcel/internal/classfile/InnerClass.java + src/com/sun/org/apache/bcel/internal/classfile/InnerClasses.java + src/com/sun/org/apache/bcel/internal/classfile/JavaClass.java + src/com/sun/org/apache/bcel/internal/classfile/LineNumber.java + src/com/sun/org/apache/bcel/internal/classfile/LineNumberTable.java + src/com/sun/org/apache/bcel/internal/classfile/LocalVariable.java + src/com/sun/org/apache/bcel/internal/classfile/LocalVariableTable.java + src/com/sun/org/apache/bcel/internal/classfile/Method.java + src/com/sun/org/apache/bcel/internal/classfile/Node.java + src/com/sun/org/apache/bcel/internal/classfile/PMGClass.java + src/com/sun/org/apache/bcel/internal/classfile/Signature.java + src/com/sun/org/apache/bcel/internal/classfile/SourceFile.java + src/com/sun/org/apache/bcel/internal/classfile/StackMap.java + src/com/sun/org/apache/bcel/internal/classfile/StackMapEntry.java + src/com/sun/org/apache/bcel/internal/classfile/StackMapType.java + src/com/sun/org/apache/bcel/internal/classfile/Synthetic.java + src/com/sun/org/apache/bcel/internal/classfile/Unknown.java + src/com/sun/org/apache/bcel/internal/classfile/Utility.java + src/com/sun/org/apache/bcel/internal/classfile/Visitor.java + src/com/sun/org/apache/bcel/internal/classfile/package.html + src/com/sun/org/apache/bcel/internal/generic/AALOAD.java + src/com/sun/org/apache/bcel/internal/generic/AASTORE.java + src/com/sun/org/apache/bcel/internal/generic/ACONST_NULL.java + src/com/sun/org/apache/bcel/internal/generic/ALOAD.java + src/com/sun/org/apache/bcel/internal/generic/ANEWARRAY.java + src/com/sun/org/apache/bcel/internal/generic/ARETURN.java + src/com/sun/org/apache/bcel/internal/generic/ARRAYLENGTH.java + src/com/sun/org/apache/bcel/internal/generic/ASTORE.java + src/com/sun/org/apache/bcel/internal/generic/ATHROW.java + src/com/sun/org/apache/bcel/internal/generic/AllocationInstruction.java + src/com/sun/org/apache/bcel/internal/generic/ArithmeticInstruction.java + src/com/sun/org/apache/bcel/internal/generic/ArrayInstruction.java + src/com/sun/org/apache/bcel/internal/generic/ArrayType.java + src/com/sun/org/apache/bcel/internal/generic/BALOAD.java + src/com/sun/org/apache/bcel/internal/generic/BASTORE.java + src/com/sun/org/apache/bcel/internal/generic/BIPUSH.java + src/com/sun/org/apache/bcel/internal/generic/BREAKPOINT.java + src/com/sun/org/apache/bcel/internal/generic/BasicType.java + src/com/sun/org/apache/bcel/internal/generic/BranchHandle.java + src/com/sun/org/apache/bcel/internal/generic/BranchInstruction.java + src/com/sun/org/apache/bcel/internal/generic/CALOAD.java + src/com/sun/org/apache/bcel/internal/generic/CASTORE.java + src/com/sun/org/apache/bcel/internal/generic/CHECKCAST.java + src/com/sun/org/apache/bcel/internal/generic/CPInstruction.java + src/com/sun/org/apache/bcel/internal/generic/ClassGen.java + src/com/sun/org/apache/bcel/internal/generic/ClassGenException.java + src/com/sun/org/apache/bcel/internal/generic/ClassObserver.java + src/com/sun/org/apache/bcel/internal/generic/CodeExceptionGen.java + src/com/sun/org/apache/bcel/internal/generic/CompoundInstruction.java + src/com/sun/org/apache/bcel/internal/generic/ConstantPoolGen.java + src/com/sun/org/apache/bcel/internal/generic/ConstantPushInstruction.java + src/com/sun/org/apache/bcel/internal/generic/ConversionInstruction.java + src/com/sun/org/apache/bcel/internal/generic/D2F.java + src/com/sun/org/apache/bcel/internal/generic/D2I.java + src/com/sun/org/apache/bcel/internal/generic/D2L.java + src/com/sun/org/apache/bcel/internal/generic/DADD.java + src/com/sun/org/apache/bcel/internal/generic/DALOAD.java + src/com/sun/org/apache/bcel/internal/generic/DASTORE.java + src/com/sun/org/apache/bcel/internal/generic/DCMPG.java + src/com/sun/org/apache/bcel/internal/generic/DCMPL.java + src/com/sun/org/apache/bcel/internal/generic/DCONST.java + src/com/sun/org/apache/bcel/internal/generic/DDIV.java + src/com/sun/org/apache/bcel/internal/generic/DLOAD.java + src/com/sun/org/apache/bcel/internal/generic/DMUL.java + src/com/sun/org/apache/bcel/internal/generic/DNEG.java + src/com/sun/org/apache/bcel/internal/generic/DREM.java + src/com/sun/org/apache/bcel/internal/generic/DRETURN.java + src/com/sun/org/apache/bcel/internal/generic/DSTORE.java + src/com/sun/org/apache/bcel/internal/generic/DSUB.java + src/com/sun/org/apache/bcel/internal/generic/DUP.java + src/com/sun/org/apache/bcel/internal/generic/DUP2.java + src/com/sun/org/apache/bcel/internal/generic/DUP2_X1.java + src/com/sun/org/apache/bcel/internal/generic/DUP2_X2.java + src/com/sun/org/apache/bcel/internal/generic/DUP_X1.java + src/com/sun/org/apache/bcel/internal/generic/DUP_X2.java + src/com/sun/org/apache/bcel/internal/generic/EmptyVisitor.java + src/com/sun/org/apache/bcel/internal/generic/ExceptionThrower.java + src/com/sun/org/apache/bcel/internal/generic/F2D.java + src/com/sun/org/apache/bcel/internal/generic/F2I.java + src/com/sun/org/apache/bcel/internal/generic/F2L.java + src/com/sun/org/apache/bcel/internal/generic/FADD.java + src/com/sun/org/apache/bcel/internal/generic/FALOAD.java + src/com/sun/org/apache/bcel/internal/generic/FASTORE.java + src/com/sun/org/apache/bcel/internal/generic/FCMPG.java + src/com/sun/org/apache/bcel/internal/generic/FCMPL.java + src/com/sun/org/apache/bcel/internal/generic/FCONST.java + src/com/sun/org/apache/bcel/internal/generic/FDIV.java + src/com/sun/org/apache/bcel/internal/generic/FLOAD.java + src/com/sun/org/apache/bcel/internal/generic/FMUL.java + src/com/sun/org/apache/bcel/internal/generic/FNEG.java + src/com/sun/org/apache/bcel/internal/generic/FREM.java + src/com/sun/org/apache/bcel/internal/generic/FRETURN.java + src/com/sun/org/apache/bcel/internal/generic/FSTORE.java + src/com/sun/org/apache/bcel/internal/generic/FSUB.java + src/com/sun/org/apache/bcel/internal/generic/FieldGen.java + src/com/sun/org/apache/bcel/internal/generic/FieldGenOrMethodGen.java + src/com/sun/org/apache/bcel/internal/generic/FieldInstruction.java + src/com/sun/org/apache/bcel/internal/generic/FieldObserver.java + src/com/sun/org/apache/bcel/internal/generic/FieldOrMethod.java + src/com/sun/org/apache/bcel/internal/generic/GETFIELD.java + src/com/sun/org/apache/bcel/internal/generic/GETSTATIC.java + src/com/sun/org/apache/bcel/internal/generic/GOTO.java + src/com/sun/org/apache/bcel/internal/generic/GOTO_W.java + src/com/sun/org/apache/bcel/internal/generic/GotoInstruction.java + src/com/sun/org/apache/bcel/internal/generic/I2B.java + src/com/sun/org/apache/bcel/internal/generic/I2C.java + src/com/sun/org/apache/bcel/internal/generic/I2D.java + src/com/sun/org/apache/bcel/internal/generic/I2F.java + src/com/sun/org/apache/bcel/internal/generic/I2L.java + src/com/sun/org/apache/bcel/internal/generic/I2S.java + src/com/sun/org/apache/bcel/internal/generic/IADD.java + src/com/sun/org/apache/bcel/internal/generic/IALOAD.java + src/com/sun/org/apache/bcel/internal/generic/IAND.java + src/com/sun/org/apache/bcel/internal/generic/IASTORE.java + src/com/sun/org/apache/bcel/internal/generic/ICONST.java + src/com/sun/org/apache/bcel/internal/generic/IDIV.java + src/com/sun/org/apache/bcel/internal/generic/IFEQ.java + src/com/sun/org/apache/bcel/internal/generic/IFGE.java + src/com/sun/org/apache/bcel/internal/generic/IFGT.java + src/com/sun/org/apache/bcel/internal/generic/IFLE.java + src/com/sun/org/apache/bcel/internal/generic/IFLT.java + src/com/sun/org/apache/bcel/internal/generic/IFNE.java + src/com/sun/org/apache/bcel/internal/generic/IFNONNULL.java + src/com/sun/org/apache/bcel/internal/generic/IFNULL.java + src/com/sun/org/apache/bcel/internal/generic/IF_ACMPEQ.java + src/com/sun/org/apache/bcel/internal/generic/IF_ACMPNE.java + src/com/sun/org/apache/bcel/internal/generic/IF_ICMPEQ.java + src/com/sun/org/apache/bcel/internal/generic/IF_ICMPGE.java + src/com/sun/org/apache/bcel/internal/generic/IF_ICMPGT.java + src/com/sun/org/apache/bcel/internal/generic/IF_ICMPLE.java + src/com/sun/org/apache/bcel/internal/generic/IF_ICMPLT.java + src/com/sun/org/apache/bcel/internal/generic/IF_ICMPNE.java + src/com/sun/org/apache/bcel/internal/generic/IINC.java + src/com/sun/org/apache/bcel/internal/generic/ILOAD.java + src/com/sun/org/apache/bcel/internal/generic/IMPDEP1.java + src/com/sun/org/apache/bcel/internal/generic/IMPDEP2.java + src/com/sun/org/apache/bcel/internal/generic/IMUL.java + src/com/sun/org/apache/bcel/internal/generic/INEG.java + src/com/sun/org/apache/bcel/internal/generic/INSTANCEOF.java + src/com/sun/org/apache/bcel/internal/generic/INVOKEINTERFACE.java + src/com/sun/org/apache/bcel/internal/generic/INVOKESPECIAL.java + src/com/sun/org/apache/bcel/internal/generic/INVOKESTATIC.java + src/com/sun/org/apache/bcel/internal/generic/INVOKEVIRTUAL.java + src/com/sun/org/apache/bcel/internal/generic/IOR.java + src/com/sun/org/apache/bcel/internal/generic/IREM.java + src/com/sun/org/apache/bcel/internal/generic/IRETURN.java + src/com/sun/org/apache/bcel/internal/generic/ISHL.java + src/com/sun/org/apache/bcel/internal/generic/ISHR.java + src/com/sun/org/apache/bcel/internal/generic/ISTORE.java + src/com/sun/org/apache/bcel/internal/generic/ISUB.java + src/com/sun/org/apache/bcel/internal/generic/IUSHR.java + src/com/sun/org/apache/bcel/internal/generic/IXOR.java + src/com/sun/org/apache/bcel/internal/generic/IfInstruction.java + src/com/sun/org/apache/bcel/internal/generic/IndexedInstruction.java + src/com/sun/org/apache/bcel/internal/generic/Instruction.java + src/com/sun/org/apache/bcel/internal/generic/InstructionComparator.java + src/com/sun/org/apache/bcel/internal/generic/InstructionConstants.java + src/com/sun/org/apache/bcel/internal/generic/InstructionFactory.java + src/com/sun/org/apache/bcel/internal/generic/InstructionHandle.java + src/com/sun/org/apache/bcel/internal/generic/InstructionList.java + src/com/sun/org/apache/bcel/internal/generic/InstructionListObserver.java + src/com/sun/org/apache/bcel/internal/generic/InstructionTargeter.java + src/com/sun/org/apache/bcel/internal/generic/InvokeInstruction.java + src/com/sun/org/apache/bcel/internal/generic/JSR.java + src/com/sun/org/apache/bcel/internal/generic/JSR_W.java + src/com/sun/org/apache/bcel/internal/generic/JsrInstruction.java + src/com/sun/org/apache/bcel/internal/generic/L2D.java + src/com/sun/org/apache/bcel/internal/generic/L2F.java + src/com/sun/org/apache/bcel/internal/generic/L2I.java + src/com/sun/org/apache/bcel/internal/generic/LADD.java + src/com/sun/org/apache/bcel/internal/generic/LALOAD.java + src/com/sun/org/apache/bcel/internal/generic/LAND.java + src/com/sun/org/apache/bcel/internal/generic/LASTORE.java + src/com/sun/org/apache/bcel/internal/generic/LCMP.java + src/com/sun/org/apache/bcel/internal/generic/LCONST.java + src/com/sun/org/apache/bcel/internal/generic/LDC.java + src/com/sun/org/apache/bcel/internal/generic/LDC2_W.java + src/com/sun/org/apache/bcel/internal/generic/LDC_W.java + src/com/sun/org/apache/bcel/internal/generic/LDIV.java + src/com/sun/org/apache/bcel/internal/generic/LLOAD.java + src/com/sun/org/apache/bcel/internal/generic/LMUL.java + src/com/sun/org/apache/bcel/internal/generic/LNEG.java + src/com/sun/org/apache/bcel/internal/generic/LOOKUPSWITCH.java + src/com/sun/org/apache/bcel/internal/generic/LOR.java + src/com/sun/org/apache/bcel/internal/generic/LREM.java + src/com/sun/org/apache/bcel/internal/generic/LRETURN.java + src/com/sun/org/apache/bcel/internal/generic/LSHL.java + src/com/sun/org/apache/bcel/internal/generic/LSHR.java + src/com/sun/org/apache/bcel/internal/generic/LSTORE.java + src/com/sun/org/apache/bcel/internal/generic/LSUB.java + src/com/sun/org/apache/bcel/internal/generic/LUSHR.java + src/com/sun/org/apache/bcel/internal/generic/LXOR.java + src/com/sun/org/apache/bcel/internal/generic/LineNumberGen.java + src/com/sun/org/apache/bcel/internal/generic/LoadClass.java + src/com/sun/org/apache/bcel/internal/generic/LoadInstruction.java + src/com/sun/org/apache/bcel/internal/generic/LocalVariableGen.java + src/com/sun/org/apache/bcel/internal/generic/LocalVariableInstruction.java + src/com/sun/org/apache/bcel/internal/generic/MONITORENTER.java + src/com/sun/org/apache/bcel/internal/generic/MONITOREXIT.java + src/com/sun/org/apache/bcel/internal/generic/MULTIANEWARRAY.java + src/com/sun/org/apache/bcel/internal/generic/MethodGen.java + src/com/sun/org/apache/bcel/internal/generic/MethodObserver.java + src/com/sun/org/apache/bcel/internal/generic/NEW.java + src/com/sun/org/apache/bcel/internal/generic/NEWARRAY.java + src/com/sun/org/apache/bcel/internal/generic/NOP.java + src/com/sun/org/apache/bcel/internal/generic/NamedAndTyped.java + src/com/sun/org/apache/bcel/internal/generic/ObjectType.java + src/com/sun/org/apache/bcel/internal/generic/POP.java + src/com/sun/org/apache/bcel/internal/generic/POP2.java + src/com/sun/org/apache/bcel/internal/generic/PUSH.java + src/com/sun/org/apache/bcel/internal/generic/PUTFIELD.java + src/com/sun/org/apache/bcel/internal/generic/PUTSTATIC.java + src/com/sun/org/apache/bcel/internal/generic/PopInstruction.java + src/com/sun/org/apache/bcel/internal/generic/PushInstruction.java + src/com/sun/org/apache/bcel/internal/generic/RET.java + src/com/sun/org/apache/bcel/internal/generic/RETURN.java + src/com/sun/org/apache/bcel/internal/generic/ReferenceType.java + src/com/sun/org/apache/bcel/internal/generic/ReturnInstruction.java + src/com/sun/org/apache/bcel/internal/generic/ReturnaddressType.java + src/com/sun/org/apache/bcel/internal/generic/SALOAD.java + src/com/sun/org/apache/bcel/internal/generic/SASTORE.java + src/com/sun/org/apache/bcel/internal/generic/SIPUSH.java + src/com/sun/org/apache/bcel/internal/generic/SWAP.java + src/com/sun/org/apache/bcel/internal/generic/SWITCH.java + src/com/sun/org/apache/bcel/internal/generic/Select.java + src/com/sun/org/apache/bcel/internal/generic/StackConsumer.java + src/com/sun/org/apache/bcel/internal/generic/StackInstruction.java + src/com/sun/org/apache/bcel/internal/generic/StackProducer.java + src/com/sun/org/apache/bcel/internal/generic/StoreInstruction.java + src/com/sun/org/apache/bcel/internal/generic/TABLESWITCH.java + src/com/sun/org/apache/bcel/internal/generic/TargetLostException.java + src/com/sun/org/apache/bcel/internal/generic/Type.java + src/com/sun/org/apache/bcel/internal/generic/TypedInstruction.java + src/com/sun/org/apache/bcel/internal/generic/UnconditionalBranch.java + src/com/sun/org/apache/bcel/internal/generic/VariableLengthInstruction.java + src/com/sun/org/apache/bcel/internal/generic/Visitor.java + src/com/sun/org/apache/bcel/internal/generic/package.html + src/com/sun/org/apache/bcel/internal/package.html + src/com/sun/org/apache/bcel/internal/util/AttributeHTML.java + src/com/sun/org/apache/bcel/internal/util/BCELFactory.java + src/com/sun/org/apache/bcel/internal/util/BCELifier.java + src/com/sun/org/apache/bcel/internal/util/ByteSequence.java + src/com/sun/org/apache/bcel/internal/util/Class2HTML.java + src/com/sun/org/apache/bcel/internal/util/ClassLoader.java + src/com/sun/org/apache/bcel/internal/util/ClassLoaderRepository.java + src/com/sun/org/apache/bcel/internal/util/ClassPath.java + src/com/sun/org/apache/bcel/internal/util/ClassQueue.java + src/com/sun/org/apache/bcel/internal/util/ClassSet.java + src/com/sun/org/apache/bcel/internal/util/ClassStack.java + src/com/sun/org/apache/bcel/internal/util/ClassVector.java + src/com/sun/org/apache/bcel/internal/util/CodeHTML.java + src/com/sun/org/apache/bcel/internal/util/ConstantHTML.java + src/com/sun/org/apache/bcel/internal/util/InstructionFinder.java + src/com/sun/org/apache/bcel/internal/util/JavaWrapper.java + src/com/sun/org/apache/bcel/internal/util/MethodHTML.java + src/com/sun/org/apache/bcel/internal/util/Repository.java + src/com/sun/org/apache/bcel/internal/util/SyntheticRepository.java + src/com/sun/org/apache/bcel/internal/util/package.html + src/com/sun/org/apache/regexp/internal/CharacterArrayCharacterIterator.java + src/com/sun/org/apache/regexp/internal/CharacterIterator.java + src/com/sun/org/apache/regexp/internal/RE.java + src/com/sun/org/apache/regexp/internal/RECompiler.java + src/com/sun/org/apache/regexp/internal/REDebugCompiler.java + src/com/sun/org/apache/regexp/internal/REProgram.java + src/com/sun/org/apache/regexp/internal/RESyntaxException.java + src/com/sun/org/apache/regexp/internal/RETest.java + src/com/sun/org/apache/regexp/internal/REUtil.java + src/com/sun/org/apache/regexp/internal/ReaderCharacterIterator.java + src/com/sun/org/apache/regexp/internal/StreamCharacterIterator.java + src/com/sun/org/apache/regexp/internal/StringCharacterIterator.java + src/com/sun/org/apache/regexp/internal/recompile.java + src/com/sun/org/apache/xalan/META-INF/services/javax.xml.transform.TransformerFactory + src/com/sun/org/apache/xalan/META-INF/services/javax.xml.xpath.XPathFactory + src/com/sun/org/apache/xalan/META-INF/services/org.apache.xml.dtm.DTMManager + src/com/sun/org/apache/xalan/internal/Version.java + src/com/sun/org/apache/xalan/internal/extensions/ExpressionContext.java + src/com/sun/org/apache/xalan/internal/extensions/package.html + src/com/sun/org/apache/xalan/internal/lib/ExsltBase.java + src/com/sun/org/apache/xalan/internal/lib/ExsltCommon.java + src/com/sun/org/apache/xalan/internal/lib/ExsltDatetime.java + src/com/sun/org/apache/xalan/internal/lib/ExsltDynamic.java + src/com/sun/org/apache/xalan/internal/lib/ExsltMath.java + src/com/sun/org/apache/xalan/internal/lib/ExsltSets.java + src/com/sun/org/apache/xalan/internal/lib/ExsltStrings.java + src/com/sun/org/apache/xalan/internal/lib/Extensions.java + src/com/sun/org/apache/xalan/internal/lib/NodeInfo.java + src/com/sun/org/apache/xalan/internal/lib/ObjectFactory.java + src/com/sun/org/apache/xalan/internal/lib/SecuritySupport.java + src/com/sun/org/apache/xalan/internal/lib/SecuritySupport12.java + src/com/sun/org/apache/xalan/internal/lib/package.html + src/com/sun/org/apache/xalan/internal/res/XSLMessages.java + src/com/sun/org/apache/xalan/internal/res/XSLTErrorResources.java + src/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_de.java + src/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_en.java + src/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_es.java + src/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_fr.java + src/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_it.java + src/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_ja.java + src/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_ko.java + src/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_pt_BR.java + src/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_sv.java + src/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_zh_CN.java + src/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_zh_TW.java + src/com/sun/org/apache/xalan/internal/res/XSLTInfo.properties + src/com/sun/org/apache/xalan/internal/res/package.html + src/com/sun/org/apache/xalan/internal/templates/Constants.java + src/com/sun/org/apache/xalan/internal/templates/package.html + src/com/sun/org/apache/xalan/internal/xslt/EnvironmentCheck.java + src/com/sun/org/apache/xalan/internal/xslt/ObjectFactory.java + src/com/sun/org/apache/xalan/internal/xslt/Process.java + src/com/sun/org/apache/xalan/internal/xslt/SecuritySupport.java + src/com/sun/org/apache/xalan/internal/xslt/SecuritySupport12.java + src/com/sun/org/apache/xalan/internal/xslt/package.html + src/com/sun/org/apache/xalan/internal/xsltc/CollatorFactory.java + src/com/sun/org/apache/xalan/internal/xsltc/DOM.java + src/com/sun/org/apache/xalan/internal/xsltc/DOMCache.java + src/com/sun/org/apache/xalan/internal/xsltc/DOMEnhancedForDTM.java + src/com/sun/org/apache/xalan/internal/xsltc/NodeIterator.java + src/com/sun/org/apache/xalan/internal/xsltc/ProcessorVersion.java + src/com/sun/org/apache/xalan/internal/xsltc/StripFilter.java + src/com/sun/org/apache/xalan/internal/xsltc/Translet.java + src/com/sun/org/apache/xalan/internal/xsltc/TransletException.java + src/com/sun/org/apache/xalan/internal/xsltc/cmdline/Compile.java + src/com/sun/org/apache/xalan/internal/xsltc/cmdline/ObjectFactory.java + src/com/sun/org/apache/xalan/internal/xsltc/cmdline/SecuritySupport.java + src/com/sun/org/apache/xalan/internal/xsltc/cmdline/SecuritySupport12.java + src/com/sun/org/apache/xalan/internal/xsltc/cmdline/Transform.java + src/com/sun/org/apache/xalan/internal/xsltc/cmdline/getopt/GetOpt.java + src/com/sun/org/apache/xalan/internal/xsltc/cmdline/getopt/GetOptsException.java + src/com/sun/org/apache/xalan/internal/xsltc/cmdline/getopt/IllegalArgumentException.java + src/com/sun/org/apache/xalan/internal/xsltc/cmdline/getopt/MissingOptArgException.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/AbsoluteLocationPath.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/AbsolutePathPattern.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/AlternativePattern.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/AncestorPattern.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/ApplyImports.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/ApplyTemplates.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/ArgumentList.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/Attribute.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/AttributeSet.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/AttributeValue.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/AttributeValueTemplate.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/BinOpExpr.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/BooleanCall.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/BooleanExpr.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/CallTemplate.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/CastCall.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/CastExpr.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/CeilingCall.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/Choose.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/Closure.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/Comment.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/CompilerException.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/ConcatCall.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/Constants.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/ContainsCall.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/Copy.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/CopyOf.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/CurrentCall.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/DecimalFormatting.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/DocumentCall.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/ElementAvailableCall.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/EqualityExpr.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/Expression.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/Fallback.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/FilterExpr.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/FilterParentPath.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/FilteredAbsoluteLocationPath.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/FloorCall.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/FlowList.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/ForEach.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/FormatNumberCall.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/FunctionAvailableCall.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/FunctionCall.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/GenerateIdCall.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/IdKeyPattern.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/IdPattern.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/If.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/IllegalCharException.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/Import.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/Include.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/Instruction.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/IntExpr.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/Key.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/KeyCall.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/KeyPattern.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/LangCall.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/LastCall.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/LiteralAttribute.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/LiteralElement.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/LiteralExpr.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/LocalNameCall.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/LocationPathPattern.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/LogicalExpr.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/Makefile.inc + src/com/sun/org/apache/xalan/internal/xsltc/compiler/Message.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/Mode.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/NameBase.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/NameCall.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/NamespaceAlias.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/NamespaceUriCall.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/NodeTest.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/NotCall.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/Number.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/NumberCall.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/ObjectFactory.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/Otherwise.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/Output.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/Param.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/ParameterRef.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/ParentLocationPath.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/ParentPattern.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/Parser.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/Pattern.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/PositionCall.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/Predicate.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/ProcessingInstruction.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/ProcessingInstructionPattern.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/QName.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/RealExpr.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/RelationalExpr.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/RelativeLocationPath.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/RelativePathPattern.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/RoundCall.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/SecuritySupport.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/SecuritySupport12.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/SimpleAttributeValue.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/Sort.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/SourceLoader.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/StartsWithCall.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/Step.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/StepPattern.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/StringCall.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/StringLengthCall.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/Stylesheet.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/SymbolTable.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/SyntaxTreeNode.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/Template.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/TestSeq.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/Text.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/TopLevelElement.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/TransletOutput.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/UnaryOpExpr.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/UnionPathExpr.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/UnparsedEntityUriCall.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/UnresolvedRef.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/UnsupportedElement.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/UseAttributeSets.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/ValueOf.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/Variable.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/VariableBase.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/VariableRef.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/VariableRefBase.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/When.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/Whitespace.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/WithParam.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/XPathLexer.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/XPathParser.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/XSLTC.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/XslAttribute.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/XslElement.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/sym.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/util/AttributeSetMethodGenerator.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/util/BooleanType.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ClassGenerator.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/util/CompareGenerator.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_ca.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_cs.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_de.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_es.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_fr.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_it.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_ja.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_ko.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_pt_BR.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_sk.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_sv.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_zh_CN.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_zh_TW.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMsg.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/util/FilterGenerator.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/util/IntType.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/util/MatchGenerator.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/util/MethodGenerator.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/util/MethodType.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/util/MultiHashtable.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/util/NamedMethodGenerator.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/util/NodeCounterGenerator.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/util/NodeSetType.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/util/NodeSortRecordFactGenerator.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/util/NodeSortRecordGenerator.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/util/NodeType.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/util/NumberType.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ObjectFactory.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ObjectType.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/util/RealType.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ReferenceType.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ResultTreeType.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/util/RtMethodGenerator.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/util/SecuritySupport.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/util/SecuritySupport12.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/util/SlotAllocator.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/util/StringStack.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/util/StringType.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/util/TestGenerator.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/util/Type.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/util/TypeCheckError.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/util/Util.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/util/VoidType.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/xpath.cup + src/com/sun/org/apache/xalan/internal/xsltc/compiler/xpath.lex + src/com/sun/org/apache/xalan/internal/xsltc/dom/AbsoluteIterator.java + src/com/sun/org/apache/xalan/internal/xsltc/dom/AdaptiveResultTreeImpl.java + src/com/sun/org/apache/xalan/internal/xsltc/dom/AnyNodeCounter.java + src/com/sun/org/apache/xalan/internal/xsltc/dom/BitArray.java + src/com/sun/org/apache/xalan/internal/xsltc/dom/CachedNodeListIterator.java + src/com/sun/org/apache/xalan/internal/xsltc/dom/ClonedNodeListIterator.java + src/com/sun/org/apache/xalan/internal/xsltc/dom/CollatorFactoryBase.java + src/com/sun/org/apache/xalan/internal/xsltc/dom/CurrentNodeListFilter.java + src/com/sun/org/apache/xalan/internal/xsltc/dom/CurrentNodeListIterator.java + src/com/sun/org/apache/xalan/internal/xsltc/dom/DOMAdapter.java + src/com/sun/org/apache/xalan/internal/xsltc/dom/DOMBuilder.java + src/com/sun/org/apache/xalan/internal/xsltc/dom/DOMWSFilter.java + src/com/sun/org/apache/xalan/internal/xsltc/dom/DocumentCache.java + src/com/sun/org/apache/xalan/internal/xsltc/dom/DupFilterIterator.java + src/com/sun/org/apache/xalan/internal/xsltc/dom/EmptyFilter.java + src/com/sun/org/apache/xalan/internal/xsltc/dom/ExtendedSAX.java + src/com/sun/org/apache/xalan/internal/xsltc/dom/Filter.java + src/com/sun/org/apache/xalan/internal/xsltc/dom/FilterIterator.java + src/com/sun/org/apache/xalan/internal/xsltc/dom/FilteredStepIterator.java + src/com/sun/org/apache/xalan/internal/xsltc/dom/ForwardPositionIterator.java + src/com/sun/org/apache/xalan/internal/xsltc/dom/KeyIndex.java + src/com/sun/org/apache/xalan/internal/xsltc/dom/LoadDocument.java + src/com/sun/org/apache/xalan/internal/xsltc/dom/MatchingIterator.java + src/com/sun/org/apache/xalan/internal/xsltc/dom/MultiDOM.java + src/com/sun/org/apache/xalan/internal/xsltc/dom/MultiValuedNodeHeapIterator.java + src/com/sun/org/apache/xalan/internal/xsltc/dom/MultipleNodeCounter.java + src/com/sun/org/apache/xalan/internal/xsltc/dom/NodeCounter.java + src/com/sun/org/apache/xalan/internal/xsltc/dom/NodeIteratorBase.java + src/com/sun/org/apache/xalan/internal/xsltc/dom/NodeSortRecord.java + src/com/sun/org/apache/xalan/internal/xsltc/dom/NodeSortRecordFactory.java + src/com/sun/org/apache/xalan/internal/xsltc/dom/NthIterator.java + src/com/sun/org/apache/xalan/internal/xsltc/dom/ObjectFactory.java + src/com/sun/org/apache/xalan/internal/xsltc/dom/SAXImpl.java + src/com/sun/org/apache/xalan/internal/xsltc/dom/SecuritySupport.java + src/com/sun/org/apache/xalan/internal/xsltc/dom/SecuritySupport12.java + src/com/sun/org/apache/xalan/internal/xsltc/dom/SimpleResultTreeImpl.java + src/com/sun/org/apache/xalan/internal/xsltc/dom/SingleNodeCounter.java + src/com/sun/org/apache/xalan/internal/xsltc/dom/SingletonIterator.java + src/com/sun/org/apache/xalan/internal/xsltc/dom/SortSettings.java + src/com/sun/org/apache/xalan/internal/xsltc/dom/SortingIterator.java + src/com/sun/org/apache/xalan/internal/xsltc/dom/StepIterator.java + src/com/sun/org/apache/xalan/internal/xsltc/dom/StripWhitespaceFilter.java + src/com/sun/org/apache/xalan/internal/xsltc/dom/UnionIterator.java + src/com/sun/org/apache/xalan/internal/xsltc/dom/XSLTCDTMManager.java + src/com/sun/org/apache/xalan/internal/xsltc/javax.xml.transform.TransformerFactory + src/com/sun/org/apache/xalan/internal/xsltc/runtime/AbstractTranslet.java + src/com/sun/org/apache/xalan/internal/xsltc/runtime/Attributes.java + src/com/sun/org/apache/xalan/internal/xsltc/runtime/BasisLibrary.java + src/com/sun/org/apache/xalan/internal/xsltc/runtime/Constants.java + src/com/sun/org/apache/xalan/internal/xsltc/runtime/ErrorMessages.java + src/com/sun/org/apache/xalan/internal/xsltc/runtime/ErrorMessages_ca.java + src/com/sun/org/apache/xalan/internal/xsltc/runtime/ErrorMessages_cs.java + src/com/sun/org/apache/xalan/internal/xsltc/runtime/ErrorMessages_de.java + src/com/sun/org/apache/xalan/internal/xsltc/runtime/ErrorMessages_es.java + src/com/sun/org/apache/xalan/internal/xsltc/runtime/ErrorMessages_fr.java + src/com/sun/org/apache/xalan/internal/xsltc/runtime/ErrorMessages_it.java + src/com/sun/org/apache/xalan/internal/xsltc/runtime/ErrorMessages_ja.java + src/com/sun/org/apache/xalan/internal/xsltc/runtime/ErrorMessages_ko.java + src/com/sun/org/apache/xalan/internal/xsltc/runtime/ErrorMessages_pt_BR.java + src/com/sun/org/apache/xalan/internal/xsltc/runtime/ErrorMessages_sk.java + src/com/sun/org/apache/xalan/internal/xsltc/runtime/ErrorMessages_sv.java + src/com/sun/org/apache/xalan/internal/xsltc/runtime/ErrorMessages_zh_CN.java + src/com/sun/org/apache/xalan/internal/xsltc/runtime/ErrorMessages_zh_TW.java + src/com/sun/org/apache/xalan/internal/xsltc/runtime/Hashtable.java + src/com/sun/org/apache/xalan/internal/xsltc/runtime/MessageHandler.java + src/com/sun/org/apache/xalan/internal/xsltc/runtime/Node.java + src/com/sun/org/apache/xalan/internal/xsltc/runtime/ObjectFactory.java + src/com/sun/org/apache/xalan/internal/xsltc/runtime/Operators.java + src/com/sun/org/apache/xalan/internal/xsltc/runtime/Parameter.java + src/com/sun/org/apache/xalan/internal/xsltc/runtime/SecuritySupport.java + src/com/sun/org/apache/xalan/internal/xsltc/runtime/SecuritySupport12.java + src/com/sun/org/apache/xalan/internal/xsltc/runtime/StringValueHandler.java + src/com/sun/org/apache/xalan/internal/xsltc/runtime/output/OutputBuffer.java + src/com/sun/org/apache/xalan/internal/xsltc/runtime/output/StringOutputBuffer.java + src/com/sun/org/apache/xalan/internal/xsltc/runtime/output/TransletOutputHandlerFactory.java + src/com/sun/org/apache/xalan/internal/xsltc/runtime/output/WriterOutputBuffer.java + src/com/sun/org/apache/xalan/internal/xsltc/trax/DOM2SAX.java + src/com/sun/org/apache/xalan/internal/xsltc/trax/DOM2TO.java + src/com/sun/org/apache/xalan/internal/xsltc/trax/ObjectFactory.java + src/com/sun/org/apache/xalan/internal/xsltc/trax/OutputSettings.java + src/com/sun/org/apache/xalan/internal/xsltc/trax/SAX2DOM.java + src/com/sun/org/apache/xalan/internal/xsltc/trax/SAX2StAXBaseWriter.java + src/com/sun/org/apache/xalan/internal/xsltc/trax/SAX2StAXEventWriter.java + src/com/sun/org/apache/xalan/internal/xsltc/trax/SAX2StAXStreamWriter.java + src/com/sun/org/apache/xalan/internal/xsltc/trax/SecuritySupport.java + src/com/sun/org/apache/xalan/internal/xsltc/trax/SecuritySupport12.java + src/com/sun/org/apache/xalan/internal/xsltc/trax/SmartTransformerFactoryImpl.java + src/com/sun/org/apache/xalan/internal/xsltc/trax/StAXEvent2SAX.java + src/com/sun/org/apache/xalan/internal/xsltc/trax/StAXStream2SAX.java + src/com/sun/org/apache/xalan/internal/xsltc/trax/TemplatesHandlerImpl.java + src/com/sun/org/apache/xalan/internal/xsltc/trax/TemplatesImpl.java + src/com/sun/org/apache/xalan/internal/xsltc/trax/TrAXFilter.java + src/com/sun/org/apache/xalan/internal/xsltc/trax/TransformerFactoryImpl.java + src/com/sun/org/apache/xalan/internal/xsltc/trax/TransformerHandlerImpl.java + src/com/sun/org/apache/xalan/internal/xsltc/trax/TransformerImpl.java + src/com/sun/org/apache/xalan/internal/xsltc/trax/Util.java + src/com/sun/org/apache/xalan/internal/xsltc/trax/XSLTCSource.java + src/com/sun/org/apache/xalan/internal/xsltc/util/IntegerArray.java + src/com/sun/org/apache/xerces/internal/dom/AttrImpl.java + src/com/sun/org/apache/xerces/internal/dom/AttrNSImpl.java + src/com/sun/org/apache/xerces/internal/dom/AttributeMap.java + src/com/sun/org/apache/xerces/internal/dom/CDATASectionImpl.java + src/com/sun/org/apache/xerces/internal/dom/CharacterDataImpl.java + src/com/sun/org/apache/xerces/internal/dom/ChildNode.java + src/com/sun/org/apache/xerces/internal/dom/CommentImpl.java + src/com/sun/org/apache/xerces/internal/dom/CoreDOMImplementationImpl.java + src/com/sun/org/apache/xerces/internal/dom/CoreDocumentImpl.java + src/com/sun/org/apache/xerces/internal/dom/DOMConfigurationImpl.java + src/com/sun/org/apache/xerces/internal/dom/DOMErrorImpl.java + src/com/sun/org/apache/xerces/internal/dom/DOMImplementationImpl.java + src/com/sun/org/apache/xerces/internal/dom/DOMImplementationListImpl.java + src/com/sun/org/apache/xerces/internal/dom/DOMImplementationSourceImpl.java + src/com/sun/org/apache/xerces/internal/dom/DOMInputImpl.java + src/com/sun/org/apache/xerces/internal/dom/DOMLocatorImpl.java + src/com/sun/org/apache/xerces/internal/dom/DOMMessageFormatter.java + src/com/sun/org/apache/xerces/internal/dom/DOMNormalizer.java + src/com/sun/org/apache/xerces/internal/dom/DOMOutputImpl.java + src/com/sun/org/apache/xerces/internal/dom/DOMStringListImpl.java + src/com/sun/org/apache/xerces/internal/dom/DOMXSImplementationSourceImpl.java + src/com/sun/org/apache/xerces/internal/dom/DeepNodeListImpl.java + src/com/sun/org/apache/xerces/internal/dom/DeferredAttrImpl.java + src/com/sun/org/apache/xerces/internal/dom/DeferredAttrNSImpl.java + src/com/sun/org/apache/xerces/internal/dom/DeferredCDATASectionImpl.java + src/com/sun/org/apache/xerces/internal/dom/DeferredCommentImpl.java + src/com/sun/org/apache/xerces/internal/dom/DeferredDOMImplementationImpl.java + src/com/sun/org/apache/xerces/internal/dom/DeferredDocumentImpl.java + src/com/sun/org/apache/xerces/internal/dom/DeferredDocumentTypeImpl.java + src/com/sun/org/apache/xerces/internal/dom/DeferredElementDefinitionImpl.java + src/com/sun/org/apache/xerces/internal/dom/DeferredElementImpl.java + src/com/sun/org/apache/xerces/internal/dom/DeferredElementNSImpl.java + src/com/sun/org/apache/xerces/internal/dom/DeferredEntityImpl.java + src/com/sun/org/apache/xerces/internal/dom/DeferredEntityReferenceImpl.java + src/com/sun/org/apache/xerces/internal/dom/DeferredNode.java + src/com/sun/org/apache/xerces/internal/dom/DeferredNotationImpl.java + src/com/sun/org/apache/xerces/internal/dom/DeferredProcessingInstructionImpl.java + src/com/sun/org/apache/xerces/internal/dom/DeferredTextImpl.java + src/com/sun/org/apache/xerces/internal/dom/DocumentFragmentImpl.java + src/com/sun/org/apache/xerces/internal/dom/DocumentImpl.java + src/com/sun/org/apache/xerces/internal/dom/DocumentTypeImpl.java + src/com/sun/org/apache/xerces/internal/dom/ElementDefinitionImpl.java + src/com/sun/org/apache/xerces/internal/dom/ElementImpl.java + src/com/sun/org/apache/xerces/internal/dom/ElementNSImpl.java + src/com/sun/org/apache/xerces/internal/dom/EntityImpl.java + src/com/sun/org/apache/xerces/internal/dom/EntityReferenceImpl.java + src/com/sun/org/apache/xerces/internal/dom/LCount.java + src/com/sun/org/apache/xerces/internal/dom/NamedNodeMapImpl.java + src/com/sun/org/apache/xerces/internal/dom/NodeImpl.java + src/com/sun/org/apache/xerces/internal/dom/NodeIteratorImpl.java + src/com/sun/org/apache/xerces/internal/dom/NodeListCache.java + src/com/sun/org/apache/xerces/internal/dom/NotationImpl.java + src/com/sun/org/apache/xerces/internal/dom/ObjectFactory.java + src/com/sun/org/apache/xerces/internal/dom/PSVIAttrNSImpl.java + src/com/sun/org/apache/xerces/internal/dom/PSVIDOMImplementationImpl.java + src/com/sun/org/apache/xerces/internal/dom/PSVIDocumentImpl.java + src/com/sun/org/apache/xerces/internal/dom/PSVIElementNSImpl.java + src/com/sun/org/apache/xerces/internal/dom/ParentNode.java + src/com/sun/org/apache/xerces/internal/dom/ProcessingInstructionImpl.java + src/com/sun/org/apache/xerces/internal/dom/RangeExceptionImpl.java + src/com/sun/org/apache/xerces/internal/dom/RangeImpl.java + src/com/sun/org/apache/xerces/internal/dom/SecuritySupport.java + src/com/sun/org/apache/xerces/internal/dom/TextImpl.java + src/com/sun/org/apache/xerces/internal/dom/TreeWalkerImpl.java + src/com/sun/org/apache/xerces/internal/dom/events/EventImpl.java + src/com/sun/org/apache/xerces/internal/dom/events/MutationEventImpl.java + src/com/sun/org/apache/xerces/internal/dom/org.apache.xerces.dom.DOMImplementationSourceImpl + src/com/sun/org/apache/xerces/internal/dom/org.w3c.dom.DOMImplementationSourceList + src/com/sun/org/apache/xerces/internal/impl/Constants.java + src/com/sun/org/apache/xerces/internal/impl/ExternalSubsetResolver.java + src/com/sun/org/apache/xerces/internal/impl/PropertyManager.java + src/com/sun/org/apache/xerces/internal/impl/RevalidationHandler.java + src/com/sun/org/apache/xerces/internal/impl/Version.java + src/com/sun/org/apache/xerces/internal/impl/XML11DTDScannerImpl.java + src/com/sun/org/apache/xerces/internal/impl/XML11DocumentScannerImpl.java + src/com/sun/org/apache/xerces/internal/impl/XML11EntityScanner.java + src/com/sun/org/apache/xerces/internal/impl/XML11NSDocumentScannerImpl.java + src/com/sun/org/apache/xerces/internal/impl/XML11NamespaceBinder.java + src/com/sun/org/apache/xerces/internal/impl/XMLDTDScannerImpl.java + src/com/sun/org/apache/xerces/internal/impl/XMLDocumentFragmentScannerImpl.java + src/com/sun/org/apache/xerces/internal/impl/XMLDocumentScannerImpl.java + src/com/sun/org/apache/xerces/internal/impl/XMLEntityDescription.java + src/com/sun/org/apache/xerces/internal/impl/XMLEntityHandler.java + src/com/sun/org/apache/xerces/internal/impl/XMLEntityManager.java + src/com/sun/org/apache/xerces/internal/impl/XMLEntityScanner.java + src/com/sun/org/apache/xerces/internal/impl/XMLErrorReporter.java + src/com/sun/org/apache/xerces/internal/impl/XMLNSDocumentScannerImpl.java + src/com/sun/org/apache/xerces/internal/impl/XMLNamespaceBinder.java + src/com/sun/org/apache/xerces/internal/impl/XMLScanner.java + src/com/sun/org/apache/xerces/internal/impl/XMLStreamFilterImpl.java + src/com/sun/org/apache/xerces/internal/impl/XMLStreamReaderImpl.java + src/com/sun/org/apache/xerces/internal/impl/XMLVersionDetector.java + src/com/sun/org/apache/xerces/internal/impl/dtd/BalancedDTDGrammar.java + src/com/sun/org/apache/xerces/internal/impl/dtd/DTDGrammar.java + src/com/sun/org/apache/xerces/internal/impl/dtd/DTDGrammarBucket.java + src/com/sun/org/apache/xerces/internal/impl/dtd/XML11DTDProcessor.java + src/com/sun/org/apache/xerces/internal/impl/dtd/XML11DTDValidator.java + src/com/sun/org/apache/xerces/internal/impl/dtd/XML11NSDTDValidator.java + src/com/sun/org/apache/xerces/internal/impl/dtd/XMLAttributeDecl.java + src/com/sun/org/apache/xerces/internal/impl/dtd/XMLContentSpec.java + src/com/sun/org/apache/xerces/internal/impl/dtd/XMLDTDDescription.java + src/com/sun/org/apache/xerces/internal/impl/dtd/XMLDTDLoader.java + src/com/sun/org/apache/xerces/internal/impl/dtd/XMLDTDProcessor.java + src/com/sun/org/apache/xerces/internal/impl/dtd/XMLDTDValidator.java + src/com/sun/org/apache/xerces/internal/impl/dtd/XMLDTDValidatorFilter.java + src/com/sun/org/apache/xerces/internal/impl/dtd/XMLElementDecl.java + src/com/sun/org/apache/xerces/internal/impl/dtd/XMLEntityDecl.java + src/com/sun/org/apache/xerces/internal/impl/dtd/XMLNSDTDValidator.java + src/com/sun/org/apache/xerces/internal/impl/dtd/XMLNotationDecl.java + src/com/sun/org/apache/xerces/internal/impl/dtd/XMLSimpleType.java + src/com/sun/org/apache/xerces/internal/impl/dtd/models/CMAny.java + src/com/sun/org/apache/xerces/internal/impl/dtd/models/CMBinOp.java + src/com/sun/org/apache/xerces/internal/impl/dtd/models/CMLeaf.java + src/com/sun/org/apache/xerces/internal/impl/dtd/models/CMNode.java + src/com/sun/org/apache/xerces/internal/impl/dtd/models/CMStateSet.java + src/com/sun/org/apache/xerces/internal/impl/dtd/models/CMUniOp.java + src/com/sun/org/apache/xerces/internal/impl/dtd/models/ContentModelValidator.java + src/com/sun/org/apache/xerces/internal/impl/dtd/models/DFAContentModel.java + src/com/sun/org/apache/xerces/internal/impl/dtd/models/MixedContentModel.java + src/com/sun/org/apache/xerces/internal/impl/dtd/models/SimpleContentModel.java + src/com/sun/org/apache/xerces/internal/impl/dv/DTDDVFactory.java + src/com/sun/org/apache/xerces/internal/impl/dv/DVFactoryException.java + src/com/sun/org/apache/xerces/internal/impl/dv/DatatypeException.java + src/com/sun/org/apache/xerces/internal/impl/dv/DatatypeValidator.java + src/com/sun/org/apache/xerces/internal/impl/dv/InvalidDatatypeFacetException.java + src/com/sun/org/apache/xerces/internal/impl/dv/InvalidDatatypeValueException.java + src/com/sun/org/apache/xerces/internal/impl/dv/ObjectFactory.java + src/com/sun/org/apache/xerces/internal/impl/dv/SchemaDVFactory.java + src/com/sun/org/apache/xerces/internal/impl/dv/SecuritySupport.java + src/com/sun/org/apache/xerces/internal/impl/dv/ValidatedInfo.java + src/com/sun/org/apache/xerces/internal/impl/dv/ValidationContext.java + src/com/sun/org/apache/xerces/internal/impl/dv/XSFacets.java + src/com/sun/org/apache/xerces/internal/impl/dv/XSSimpleType.java + src/com/sun/org/apache/xerces/internal/impl/dv/dtd/DTDDVFactoryImpl.java + src/com/sun/org/apache/xerces/internal/impl/dv/dtd/ENTITYDatatypeValidator.java + src/com/sun/org/apache/xerces/internal/impl/dv/dtd/IDDatatypeValidator.java + src/com/sun/org/apache/xerces/internal/impl/dv/dtd/IDREFDatatypeValidator.java + src/com/sun/org/apache/xerces/internal/impl/dv/dtd/ListDatatypeValidator.java + src/com/sun/org/apache/xerces/internal/impl/dv/dtd/NMTOKENDatatypeValidator.java + src/com/sun/org/apache/xerces/internal/impl/dv/dtd/NOTATIONDatatypeValidator.java + src/com/sun/org/apache/xerces/internal/impl/dv/dtd/StringDatatypeValidator.java + src/com/sun/org/apache/xerces/internal/impl/dv/dtd/XML11DTDDVFactoryImpl.java + src/com/sun/org/apache/xerces/internal/impl/dv/dtd/XML11IDDatatypeValidator.java + src/com/sun/org/apache/xerces/internal/impl/dv/dtd/XML11IDREFDatatypeValidator.java + src/com/sun/org/apache/xerces/internal/impl/dv/dtd/XML11NMTOKENDatatypeValidator.java + src/com/sun/org/apache/xerces/internal/impl/dv/util/Base64.java + src/com/sun/org/apache/xerces/internal/impl/dv/util/ByteListImpl.java + src/com/sun/org/apache/xerces/internal/impl/dv/util/HexBin.java + src/com/sun/org/apache/xerces/internal/impl/dv/xs/AbstractDateTimeDV.java + src/com/sun/org/apache/xerces/internal/impl/dv/xs/AnyAtomicDV.java + src/com/sun/org/apache/xerces/internal/impl/dv/xs/AnySimpleDV.java + src/com/sun/org/apache/xerces/internal/impl/dv/xs/AnyURIDV.java + src/com/sun/org/apache/xerces/internal/impl/dv/xs/Base64BinaryDV.java + src/com/sun/org/apache/xerces/internal/impl/dv/xs/BaseDVFactory.java + src/com/sun/org/apache/xerces/internal/impl/dv/xs/BaseSchemaDVFactory.java + src/com/sun/org/apache/xerces/internal/impl/dv/xs/BooleanDV.java + src/com/sun/org/apache/xerces/internal/impl/dv/xs/DateDV.java + src/com/sun/org/apache/xerces/internal/impl/dv/xs/DateTimeDV.java + src/com/sun/org/apache/xerces/internal/impl/dv/xs/DayDV.java + src/com/sun/org/apache/xerces/internal/impl/dv/xs/DayTimeDurationDV.java + src/com/sun/org/apache/xerces/internal/impl/dv/xs/DecimalDV.java + src/com/sun/org/apache/xerces/internal/impl/dv/xs/DoubleDV.java + src/com/sun/org/apache/xerces/internal/impl/dv/xs/DurationDV.java + src/com/sun/org/apache/xerces/internal/impl/dv/xs/EntityDV.java + src/com/sun/org/apache/xerces/internal/impl/dv/xs/ExtendedSchemaDVFactoryImpl.java + src/com/sun/org/apache/xerces/internal/impl/dv/xs/FloatDV.java + src/com/sun/org/apache/xerces/internal/impl/dv/xs/FullDVFactory.java + src/com/sun/org/apache/xerces/internal/impl/dv/xs/HexBinaryDV.java + src/com/sun/org/apache/xerces/internal/impl/dv/xs/IDDV.java + src/com/sun/org/apache/xerces/internal/impl/dv/xs/IDREFDV.java + src/com/sun/org/apache/xerces/internal/impl/dv/xs/IntegerDV.java + src/com/sun/org/apache/xerces/internal/impl/dv/xs/ListDV.java + src/com/sun/org/apache/xerces/internal/impl/dv/xs/MonthDV.java + src/com/sun/org/apache/xerces/internal/impl/dv/xs/MonthDayDV.java + src/com/sun/org/apache/xerces/internal/impl/dv/xs/PrecisionDecimalDV.java + src/com/sun/org/apache/xerces/internal/impl/dv/xs/QNameDV.java + src/com/sun/org/apache/xerces/internal/impl/dv/xs/SchemaDVFactoryImpl.java + src/com/sun/org/apache/xerces/internal/impl/dv/xs/SchemaDateTimeException.java + src/com/sun/org/apache/xerces/internal/impl/dv/xs/StringDV.java + src/com/sun/org/apache/xerces/internal/impl/dv/xs/TimeDV.java + src/com/sun/org/apache/xerces/internal/impl/dv/xs/TypeValidator.java + src/com/sun/org/apache/xerces/internal/impl/dv/xs/UnionDV.java + src/com/sun/org/apache/xerces/internal/impl/dv/xs/XSSimpleTypeDecl.java + src/com/sun/org/apache/xerces/internal/impl/dv/xs/XSSimpleTypeDelegate.java + src/com/sun/org/apache/xerces/internal/impl/dv/xs/YearDV.java + src/com/sun/org/apache/xerces/internal/impl/dv/xs/YearMonthDV.java + src/com/sun/org/apache/xerces/internal/impl/dv/xs/YearMonthDurationDV.java + src/com/sun/org/apache/xerces/internal/impl/io/ASCIIReader.java + src/com/sun/org/apache/xerces/internal/impl/io/MalformedByteSequenceException.java + src/com/sun/org/apache/xerces/internal/impl/io/UCSReader.java + src/com/sun/org/apache/xerces/internal/impl/io/UTF8Reader.java + src/com/sun/org/apache/xerces/internal/impl/msg/DOMMessages.properties + src/com/sun/org/apache/xerces/internal/impl/msg/DOMMessages_de.properties + src/com/sun/org/apache/xerces/internal/impl/msg/DOMMessages_es.properties + src/com/sun/org/apache/xerces/internal/impl/msg/DOMMessages_fr.properties + src/com/sun/org/apache/xerces/internal/impl/msg/DOMMessages_it.properties + src/com/sun/org/apache/xerces/internal/impl/msg/DOMMessages_ja.properties + src/com/sun/org/apache/xerces/internal/impl/msg/DOMMessages_ko.properties + src/com/sun/org/apache/xerces/internal/impl/msg/DOMMessages_pt_BR.properties + src/com/sun/org/apache/xerces/internal/impl/msg/DOMMessages_sv.properties + src/com/sun/org/apache/xerces/internal/impl/msg/DOMMessages_zh_CN.properties + src/com/sun/org/apache/xerces/internal/impl/msg/DOMMessages_zh_TW.properties + src/com/sun/org/apache/xerces/internal/impl/msg/DatatypeMessages.properties + src/com/sun/org/apache/xerces/internal/impl/msg/DatatypeMessages_de.properties + src/com/sun/org/apache/xerces/internal/impl/msg/DatatypeMessages_es.properties + src/com/sun/org/apache/xerces/internal/impl/msg/DatatypeMessages_fr.properties + src/com/sun/org/apache/xerces/internal/impl/msg/DatatypeMessages_it.properties + src/com/sun/org/apache/xerces/internal/impl/msg/DatatypeMessages_ja.properties + src/com/sun/org/apache/xerces/internal/impl/msg/DatatypeMessages_ko.properties + src/com/sun/org/apache/xerces/internal/impl/msg/DatatypeMessages_pt_BR.properties + src/com/sun/org/apache/xerces/internal/impl/msg/DatatypeMessages_sv.properties + src/com/sun/org/apache/xerces/internal/impl/msg/DatatypeMessages_zh_CN.properties + src/com/sun/org/apache/xerces/internal/impl/msg/DatatypeMessages_zh_TW.properties + src/com/sun/org/apache/xerces/internal/impl/msg/JAXPValidationMessages.properties + src/com/sun/org/apache/xerces/internal/impl/msg/JAXPValidationMessages_de.properties + src/com/sun/org/apache/xerces/internal/impl/msg/JAXPValidationMessages_es.properties + src/com/sun/org/apache/xerces/internal/impl/msg/JAXPValidationMessages_fr.properties + src/com/sun/org/apache/xerces/internal/impl/msg/JAXPValidationMessages_it.properties + src/com/sun/org/apache/xerces/internal/impl/msg/JAXPValidationMessages_ja.properties + src/com/sun/org/apache/xerces/internal/impl/msg/JAXPValidationMessages_ko.properties + src/com/sun/org/apache/xerces/internal/impl/msg/JAXPValidationMessages_pt_BR.properties + src/com/sun/org/apache/xerces/internal/impl/msg/JAXPValidationMessages_sv.properties + src/com/sun/org/apache/xerces/internal/impl/msg/JAXPValidationMessages_zh_CN.properties + src/com/sun/org/apache/xerces/internal/impl/msg/JAXPValidationMessages_zh_TW.properties + src/com/sun/org/apache/xerces/internal/impl/msg/SAXMessages.properties + src/com/sun/org/apache/xerces/internal/impl/msg/SAXMessages_de.properties + src/com/sun/org/apache/xerces/internal/impl/msg/SAXMessages_es.properties + src/com/sun/org/apache/xerces/internal/impl/msg/SAXMessages_fr.properties + src/com/sun/org/apache/xerces/internal/impl/msg/SAXMessages_it.properties + src/com/sun/org/apache/xerces/internal/impl/msg/SAXMessages_ja.properties + src/com/sun/org/apache/xerces/internal/impl/msg/SAXMessages_ko.properties + src/com/sun/org/apache/xerces/internal/impl/msg/SAXMessages_pt_BR.properties + src/com/sun/org/apache/xerces/internal/impl/msg/SAXMessages_sv.properties + src/com/sun/org/apache/xerces/internal/impl/msg/SAXMessages_zh_CN.properties + src/com/sun/org/apache/xerces/internal/impl/msg/SAXMessages_zh_TW.properties + src/com/sun/org/apache/xerces/internal/impl/msg/XIncludeMessages.properties + src/com/sun/org/apache/xerces/internal/impl/msg/XIncludeMessages_de.properties + src/com/sun/org/apache/xerces/internal/impl/msg/XIncludeMessages_es.properties + src/com/sun/org/apache/xerces/internal/impl/msg/XIncludeMessages_fr.properties + src/com/sun/org/apache/xerces/internal/impl/msg/XIncludeMessages_it.properties + src/com/sun/org/apache/xerces/internal/impl/msg/XIncludeMessages_ja.properties + src/com/sun/org/apache/xerces/internal/impl/msg/XIncludeMessages_ko.properties + src/com/sun/org/apache/xerces/internal/impl/msg/XIncludeMessages_pt_BR.properties + src/com/sun/org/apache/xerces/internal/impl/msg/XIncludeMessages_sv.properties + src/com/sun/org/apache/xerces/internal/impl/msg/XIncludeMessages_zh_CN.properties + src/com/sun/org/apache/xerces/internal/impl/msg/XIncludeMessages_zh_TW.properties + src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessageFormatter.java + src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessageFormatter_de.java + src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessageFormatter_es.java + src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessageFormatter_fr.java + src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessageFormatter_it.java + src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessageFormatter_ja.java + src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessageFormatter_ko.java + src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessageFormatter_pt_BR.java + src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessageFormatter_sv.java + src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessageFormatter_zh_CN.java + src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessageFormatter_zh_TW.java + src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages.properties + src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_de.properties + src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_es.properties + src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_fr.properties + src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_it.properties + src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_ja.properties + src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_ko.properties + src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_pt_BR.properties + src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_sv.properties + src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_zh_CN.properties + src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_zh_TW.properties + src/com/sun/org/apache/xerces/internal/impl/msg/XMLSchemaMessages.properties + src/com/sun/org/apache/xerces/internal/impl/msg/XMLSchemaMessages_de.properties + src/com/sun/org/apache/xerces/internal/impl/msg/XMLSchemaMessages_es.properties + src/com/sun/org/apache/xerces/internal/impl/msg/XMLSchemaMessages_fr.properties + src/com/sun/org/apache/xerces/internal/impl/msg/XMLSchemaMessages_it.properties + src/com/sun/org/apache/xerces/internal/impl/msg/XMLSchemaMessages_ja.properties + src/com/sun/org/apache/xerces/internal/impl/msg/XMLSchemaMessages_ko.properties + src/com/sun/org/apache/xerces/internal/impl/msg/XMLSchemaMessages_pt_BR.properties + src/com/sun/org/apache/xerces/internal/impl/msg/XMLSchemaMessages_sv.properties + src/com/sun/org/apache/xerces/internal/impl/msg/XMLSchemaMessages_zh_CN.properties + src/com/sun/org/apache/xerces/internal/impl/msg/XMLSchemaMessages_zh_TW.properties + src/com/sun/org/apache/xerces/internal/impl/msg/XMLSerializerMessages.properties + src/com/sun/org/apache/xerces/internal/impl/msg/XMLSerializerMessages_de.properties + src/com/sun/org/apache/xerces/internal/impl/msg/XMLSerializerMessages_es.properties + src/com/sun/org/apache/xerces/internal/impl/msg/XMLSerializerMessages_fr.properties + src/com/sun/org/apache/xerces/internal/impl/msg/XMLSerializerMessages_it.properties + src/com/sun/org/apache/xerces/internal/impl/msg/XMLSerializerMessages_ja.properties + src/com/sun/org/apache/xerces/internal/impl/msg/XMLSerializerMessages_ko.properties + src/com/sun/org/apache/xerces/internal/impl/msg/XMLSerializerMessages_pt_BR.properties + src/com/sun/org/apache/xerces/internal/impl/msg/XMLSerializerMessages_sv.properties + src/com/sun/org/apache/xerces/internal/impl/msg/XMLSerializerMessages_zh_CN.properties + src/com/sun/org/apache/xerces/internal/impl/msg/XMLSerializerMessages_zh_TW.properties + src/com/sun/org/apache/xerces/internal/impl/msg/XPointerMessages.properties + src/com/sun/org/apache/xerces/internal/impl/msg/XPointerMessages_de.properties + src/com/sun/org/apache/xerces/internal/impl/msg/XPointerMessages_es.properties + src/com/sun/org/apache/xerces/internal/impl/msg/XPointerMessages_fr.properties + src/com/sun/org/apache/xerces/internal/impl/msg/XPointerMessages_it.properties + src/com/sun/org/apache/xerces/internal/impl/msg/XPointerMessages_ja.properties + src/com/sun/org/apache/xerces/internal/impl/msg/XPointerMessages_ko.properties + src/com/sun/org/apache/xerces/internal/impl/msg/XPointerMessages_pt_BR.properties + src/com/sun/org/apache/xerces/internal/impl/msg/XPointerMessages_sv.properties + src/com/sun/org/apache/xerces/internal/impl/msg/XPointerMessages_zh_CN.properties + src/com/sun/org/apache/xerces/internal/impl/msg/XPointerMessages_zh_TW.properties + src/com/sun/org/apache/xerces/internal/impl/validation/EntityState.java + src/com/sun/org/apache/xerces/internal/impl/validation/ValidationManager.java + src/com/sun/org/apache/xerces/internal/impl/validation/ValidationState.java + src/com/sun/org/apache/xerces/internal/impl/xpath/XPath.java + src/com/sun/org/apache/xerces/internal/impl/xpath/XPathException.java + src/com/sun/org/apache/xerces/internal/impl/xpath/regex/BMPattern.java + src/com/sun/org/apache/xerces/internal/impl/xpath/regex/CaseInsensitiveMap.java + src/com/sun/org/apache/xerces/internal/impl/xpath/regex/Match.java + src/com/sun/org/apache/xerces/internal/impl/xpath/regex/Op.java + src/com/sun/org/apache/xerces/internal/impl/xpath/regex/ParseException.java + src/com/sun/org/apache/xerces/internal/impl/xpath/regex/ParserForXMLSchema.java + src/com/sun/org/apache/xerces/internal/impl/xpath/regex/REUtil.java + src/com/sun/org/apache/xerces/internal/impl/xpath/regex/RangeToken.java + src/com/sun/org/apache/xerces/internal/impl/xpath/regex/RegexParser.java + src/com/sun/org/apache/xerces/internal/impl/xpath/regex/RegularExpression.java + src/com/sun/org/apache/xerces/internal/impl/xpath/regex/Token.java + src/com/sun/org/apache/xerces/internal/impl/xpath/regex/message.properties + src/com/sun/org/apache/xerces/internal/impl/xpath/regex/message_fr.properties + src/com/sun/org/apache/xerces/internal/impl/xpath/regex/message_ja.properties + src/com/sun/org/apache/xerces/internal/impl/xs/AttributePSVImpl.java + src/com/sun/org/apache/xerces/internal/impl/xs/ElementPSVImpl.java + src/com/sun/org/apache/xerces/internal/impl/xs/SchemaGrammar.java + src/com/sun/org/apache/xerces/internal/impl/xs/SchemaNamespaceSupport.java + src/com/sun/org/apache/xerces/internal/impl/xs/SchemaSymbols.java + src/com/sun/org/apache/xerces/internal/impl/xs/SubstitutionGroupHandler.java + src/com/sun/org/apache/xerces/internal/impl/xs/XMLSchemaException.java + src/com/sun/org/apache/xerces/internal/impl/xs/XMLSchemaLoader.java + src/com/sun/org/apache/xerces/internal/impl/xs/XMLSchemaValidator.java + src/com/sun/org/apache/xerces/internal/impl/xs/XSAnnotationImpl.java + src/com/sun/org/apache/xerces/internal/impl/xs/XSAttributeDecl.java + src/com/sun/org/apache/xerces/internal/impl/xs/XSAttributeGroupDecl.java + src/com/sun/org/apache/xerces/internal/impl/xs/XSAttributeUseImpl.java + src/com/sun/org/apache/xerces/internal/impl/xs/XSComplexTypeDecl.java + src/com/sun/org/apache/xerces/internal/impl/xs/XSConstraints.java + src/com/sun/org/apache/xerces/internal/impl/xs/XSDDescription.java + src/com/sun/org/apache/xerces/internal/impl/xs/XSDeclarationPool.java + src/com/sun/org/apache/xerces/internal/impl/xs/XSElementDecl.java + src/com/sun/org/apache/xerces/internal/impl/xs/XSGrammarBucket.java + src/com/sun/org/apache/xerces/internal/impl/xs/XSGroupDecl.java + src/com/sun/org/apache/xerces/internal/impl/xs/XSImplementationImpl.java + src/com/sun/org/apache/xerces/internal/impl/xs/XSLoaderImpl.java + src/com/sun/org/apache/xerces/internal/impl/xs/XSMessageFormatter.java + src/com/sun/org/apache/xerces/internal/impl/xs/XSModelGroupImpl.java + src/com/sun/org/apache/xerces/internal/impl/xs/XSModelImpl.java + src/com/sun/org/apache/xerces/internal/impl/xs/XSNotationDecl.java + src/com/sun/org/apache/xerces/internal/impl/xs/XSParticleDecl.java + src/com/sun/org/apache/xerces/internal/impl/xs/XSWildcardDecl.java + src/com/sun/org/apache/xerces/internal/impl/xs/identity/Field.java + src/com/sun/org/apache/xerces/internal/impl/xs/identity/FieldActivator.java + src/com/sun/org/apache/xerces/internal/impl/xs/identity/IdentityConstraint.java + src/com/sun/org/apache/xerces/internal/impl/xs/identity/KeyRef.java + src/com/sun/org/apache/xerces/internal/impl/xs/identity/Selector.java + src/com/sun/org/apache/xerces/internal/impl/xs/identity/UniqueOrKey.java + src/com/sun/org/apache/xerces/internal/impl/xs/identity/ValueStore.java + src/com/sun/org/apache/xerces/internal/impl/xs/identity/XPathMatcher.java + src/com/sun/org/apache/xerces/internal/impl/xs/models/CMBuilder.java + src/com/sun/org/apache/xerces/internal/impl/xs/models/CMNodeFactory.java + src/com/sun/org/apache/xerces/internal/impl/xs/models/XSAllCM.java + src/com/sun/org/apache/xerces/internal/impl/xs/models/XSCMBinOp.java + src/com/sun/org/apache/xerces/internal/impl/xs/models/XSCMLeaf.java + src/com/sun/org/apache/xerces/internal/impl/xs/models/XSCMRepeatingLeaf.java + src/com/sun/org/apache/xerces/internal/impl/xs/models/XSCMUniOp.java + src/com/sun/org/apache/xerces/internal/impl/xs/models/XSCMValidator.java + src/com/sun/org/apache/xerces/internal/impl/xs/models/XSDFACM.java + src/com/sun/org/apache/xerces/internal/impl/xs/models/XSEmptyCM.java + src/com/sun/org/apache/xerces/internal/impl/xs/opti/AttrImpl.java + src/com/sun/org/apache/xerces/internal/impl/xs/opti/DefaultDocument.java + src/com/sun/org/apache/xerces/internal/impl/xs/opti/DefaultElement.java + src/com/sun/org/apache/xerces/internal/impl/xs/opti/DefaultNode.java + src/com/sun/org/apache/xerces/internal/impl/xs/opti/DefaultText.java + src/com/sun/org/apache/xerces/internal/impl/xs/opti/DefaultXMLDocumentHandler.java + src/com/sun/org/apache/xerces/internal/impl/xs/opti/ElementImpl.java + src/com/sun/org/apache/xerces/internal/impl/xs/opti/NamedNodeMapImpl.java + src/com/sun/org/apache/xerces/internal/impl/xs/opti/NodeImpl.java + src/com/sun/org/apache/xerces/internal/impl/xs/opti/SchemaDOM.java + src/com/sun/org/apache/xerces/internal/impl/xs/opti/SchemaDOMImplementation.java + src/com/sun/org/apache/xerces/internal/impl/xs/opti/SchemaDOMParser.java + src/com/sun/org/apache/xerces/internal/impl/xs/opti/SchemaParsingConfig.java + src/com/sun/org/apache/xerces/internal/impl/xs/opti/TextImpl.java + src/com/sun/org/apache/xerces/internal/impl/xs/traversers/SchemaContentHandler.java + src/com/sun/org/apache/xerces/internal/impl/xs/traversers/StAXSchemaParser.java + src/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSAnnotationInfo.java + src/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSAttributeChecker.java + src/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSDAbstractIDConstraintTraverser.java + src/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSDAbstractParticleTraverser.java + src/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSDAbstractTraverser.java + src/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSDAttributeGroupTraverser.java + src/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSDAttributeTraverser.java + src/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSDComplexTypeTraverser.java + src/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSDElementTraverser.java + src/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSDGroupTraverser.java + src/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSDHandler.java + src/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSDKeyrefTraverser.java + src/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSDNotationTraverser.java + src/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSDSimpleTypeTraverser.java + src/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSDUniqueOrKeyTraverser.java + src/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSDWildcardTraverser.java + src/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSDocumentInfo.java + src/com/sun/org/apache/xerces/internal/impl/xs/util/LSInputListImpl.java + src/com/sun/org/apache/xerces/internal/impl/xs/util/ObjectListImpl.java + src/com/sun/org/apache/xerces/internal/impl/xs/util/ShortListImpl.java + src/com/sun/org/apache/xerces/internal/impl/xs/util/SimpleLocator.java + src/com/sun/org/apache/xerces/internal/impl/xs/util/StringListImpl.java + src/com/sun/org/apache/xerces/internal/impl/xs/util/XInt.java + src/com/sun/org/apache/xerces/internal/impl/xs/util/XIntPool.java + src/com/sun/org/apache/xerces/internal/impl/xs/util/XSGrammarPool.java + src/com/sun/org/apache/xerces/internal/impl/xs/util/XSInputSource.java + src/com/sun/org/apache/xerces/internal/impl/xs/util/XSNamedMap4Types.java + src/com/sun/org/apache/xerces/internal/impl/xs/util/XSNamedMapImpl.java + src/com/sun/org/apache/xerces/internal/impl/xs/util/XSObjectListImpl.java + src/com/sun/org/apache/xerces/internal/jaxp/DefaultValidationErrorHandler.java + src/com/sun/org/apache/xerces/internal/jaxp/DocumentBuilderFactoryImpl.java + src/com/sun/org/apache/xerces/internal/jaxp/DocumentBuilderImpl.java + src/com/sun/org/apache/xerces/internal/jaxp/JAXPConstants.java + src/com/sun/org/apache/xerces/internal/jaxp/JAXPValidatorComponent.java + src/com/sun/org/apache/xerces/internal/jaxp/SAXParserFactoryImpl.java + src/com/sun/org/apache/xerces/internal/jaxp/SAXParserImpl.java + src/com/sun/org/apache/xerces/internal/jaxp/SchemaValidatorConfiguration.java + src/com/sun/org/apache/xerces/internal/jaxp/TeeXMLDocumentFilterImpl.java + src/com/sun/org/apache/xerces/internal/jaxp/UnparsedEntityHandler.java + src/com/sun/org/apache/xerces/internal/jaxp/datatype/DatatypeFactoryImpl.java + src/com/sun/org/apache/xerces/internal/jaxp/datatype/DurationDayTimeImpl.java + src/com/sun/org/apache/xerces/internal/jaxp/datatype/DurationImpl.java + src/com/sun/org/apache/xerces/internal/jaxp/datatype/DurationYearMonthImpl.java + src/com/sun/org/apache/xerces/internal/jaxp/datatype/XMLGregorianCalendarImpl.java + src/com/sun/org/apache/xerces/internal/jaxp/datatype/javax.xml.datatype.DatatypeFactory + src/com/sun/org/apache/xerces/internal/jaxp/javax.xml.parsers.DocumentBuilderFactory + src/com/sun/org/apache/xerces/internal/jaxp/javax.xml.parsers.SAXParserFactory + src/com/sun/org/apache/xerces/internal/jaxp/validation/AbstractXMLSchema.java + src/com/sun/org/apache/xerces/internal/jaxp/validation/DOMDocumentHandler.java + src/com/sun/org/apache/xerces/internal/jaxp/validation/DOMResultAugmentor.java + src/com/sun/org/apache/xerces/internal/jaxp/validation/DOMResultBuilder.java + src/com/sun/org/apache/xerces/internal/jaxp/validation/DOMValidatorHelper.java + src/com/sun/org/apache/xerces/internal/jaxp/validation/DraconianErrorHandler.java + src/com/sun/org/apache/xerces/internal/jaxp/validation/EmptyXMLSchema.java + src/com/sun/org/apache/xerces/internal/jaxp/validation/ErrorHandlerAdaptor.java + src/com/sun/org/apache/xerces/internal/jaxp/validation/JAXPValidationMessageFormatter.java + src/com/sun/org/apache/xerces/internal/jaxp/validation/ReadOnlyGrammarPool.java + src/com/sun/org/apache/xerces/internal/jaxp/validation/SimpleXMLSchema.java + src/com/sun/org/apache/xerces/internal/jaxp/validation/SoftReferenceGrammarPool.java + src/com/sun/org/apache/xerces/internal/jaxp/validation/StAXValidatorHelper.java + src/com/sun/org/apache/xerces/internal/jaxp/validation/StreamValidatorHelper.java + src/com/sun/org/apache/xerces/internal/jaxp/validation/Util.java + src/com/sun/org/apache/xerces/internal/jaxp/validation/ValidatorHandlerImpl.java + src/com/sun/org/apache/xerces/internal/jaxp/validation/ValidatorHelper.java + src/com/sun/org/apache/xerces/internal/jaxp/validation/ValidatorImpl.java + src/com/sun/org/apache/xerces/internal/jaxp/validation/WeakReferenceXMLSchema.java + src/com/sun/org/apache/xerces/internal/jaxp/validation/WrappedSAXException.java + src/com/sun/org/apache/xerces/internal/jaxp/validation/XMLSchema.java + src/com/sun/org/apache/xerces/internal/jaxp/validation/XMLSchemaFactory.java + src/com/sun/org/apache/xerces/internal/jaxp/validation/XMLSchemaValidatorComponentManager.java + src/com/sun/org/apache/xerces/internal/jaxp/validation/XSGrammarPoolContainer.java + src/com/sun/org/apache/xerces/internal/jaxp/validation/javax.xml.validation.SchemaFactory + src/com/sun/org/apache/xerces/internal/parsers/AbstractDOMParser.java + src/com/sun/org/apache/xerces/internal/parsers/AbstractSAXParser.java + src/com/sun/org/apache/xerces/internal/parsers/AbstractXMLDocumentParser.java + src/com/sun/org/apache/xerces/internal/parsers/BasicParserConfiguration.java + src/com/sun/org/apache/xerces/internal/parsers/CachingParserPool.java + src/com/sun/org/apache/xerces/internal/parsers/DOMParser.java + src/com/sun/org/apache/xerces/internal/parsers/DOMParserImpl.java + src/com/sun/org/apache/xerces/internal/parsers/DTDConfiguration.java + src/com/sun/org/apache/xerces/internal/parsers/DTDParser.java + src/com/sun/org/apache/xerces/internal/parsers/IntegratedParserConfiguration.java + src/com/sun/org/apache/xerces/internal/parsers/NonValidatingConfiguration.java + src/com/sun/org/apache/xerces/internal/parsers/ObjectFactory.java + src/com/sun/org/apache/xerces/internal/parsers/SAXParser.java + src/com/sun/org/apache/xerces/internal/parsers/SecurityConfiguration.java + src/com/sun/org/apache/xerces/internal/parsers/SecuritySupport.java + src/com/sun/org/apache/xerces/internal/parsers/StandardParserConfiguration.java + src/com/sun/org/apache/xerces/internal/parsers/XIncludeAwareParserConfiguration.java + src/com/sun/org/apache/xerces/internal/parsers/XIncludeParserConfiguration.java + src/com/sun/org/apache/xerces/internal/parsers/XML11Configurable.java + src/com/sun/org/apache/xerces/internal/parsers/XML11Configuration.java + src/com/sun/org/apache/xerces/internal/parsers/XML11DTDConfiguration.java + src/com/sun/org/apache/xerces/internal/parsers/XML11NonValidatingConfiguration.java + src/com/sun/org/apache/xerces/internal/parsers/XMLDocumentParser.java + src/com/sun/org/apache/xerces/internal/parsers/XMLGrammarCachingConfiguration.java + src/com/sun/org/apache/xerces/internal/parsers/XMLGrammarParser.java + src/com/sun/org/apache/xerces/internal/parsers/XMLGrammarPreparser.java + src/com/sun/org/apache/xerces/internal/parsers/XMLParser.java + src/com/sun/org/apache/xerces/internal/parsers/XPointerParserConfiguration.java + src/com/sun/org/apache/xerces/internal/parsers/org.apache.xerces.xni.parser.DTDConfiguration + src/com/sun/org/apache/xerces/internal/parsers/org.apache.xerces.xni.parser.XML11Configuration + src/com/sun/org/apache/xerces/internal/parsers/org.apache.xerces.xni.parser.XMLParserConfiguration + src/com/sun/org/apache/xerces/internal/parsers/org.xml.sax.driver + src/com/sun/org/apache/xerces/internal/util/AttributesProxy.java + src/com/sun/org/apache/xerces/internal/util/AugmentationsImpl.java + src/com/sun/org/apache/xerces/internal/util/DOMEntityResolverWrapper.java + src/com/sun/org/apache/xerces/internal/util/DOMErrorHandlerWrapper.java + src/com/sun/org/apache/xerces/internal/util/DOMInputSource.java + src/com/sun/org/apache/xerces/internal/util/DOMUtil.java + src/com/sun/org/apache/xerces/internal/util/DatatypeMessageFormatter.java + src/com/sun/org/apache/xerces/internal/util/DefaultErrorHandler.java + src/com/sun/org/apache/xerces/internal/util/DraconianErrorHandler.java + src/com/sun/org/apache/xerces/internal/util/EncodingMap.java + src/com/sun/org/apache/xerces/internal/util/EntityResolver2Wrapper.java + src/com/sun/org/apache/xerces/internal/util/EntityResolverWrapper.java + src/com/sun/org/apache/xerces/internal/util/ErrorHandlerProxy.java + src/com/sun/org/apache/xerces/internal/util/ErrorHandlerWrapper.java + src/com/sun/org/apache/xerces/internal/util/FeatureState.java + src/com/sun/org/apache/xerces/internal/util/HTTPInputSource.java + src/com/sun/org/apache/xerces/internal/util/IntStack.java + src/com/sun/org/apache/xerces/internal/util/JAXPNamespaceContextWrapper.java + src/com/sun/org/apache/xerces/internal/util/LocatorProxy.java + src/com/sun/org/apache/xerces/internal/util/LocatorWrapper.java + src/com/sun/org/apache/xerces/internal/util/MessageFormatter.java + src/com/sun/org/apache/xerces/internal/util/NamespaceContextWrapper.java + src/com/sun/org/apache/xerces/internal/util/NamespaceSupport.java + src/com/sun/org/apache/xerces/internal/util/ParserConfigurationSettings.java + src/com/sun/org/apache/xerces/internal/util/PropertyState.java + src/com/sun/org/apache/xerces/internal/util/SAX2XNI.java + src/com/sun/org/apache/xerces/internal/util/SAXInputSource.java + src/com/sun/org/apache/xerces/internal/util/SAXLocatorWrapper.java + src/com/sun/org/apache/xerces/internal/util/SAXMessageFormatter.java + src/com/sun/org/apache/xerces/internal/util/SecurityManager.java + src/com/sun/org/apache/xerces/internal/util/ShadowedSymbolTable.java + src/com/sun/org/apache/xerces/internal/util/StAXInputSource.java + src/com/sun/org/apache/xerces/internal/util/StAXLocationWrapper.java + src/com/sun/org/apache/xerces/internal/util/Status.java + src/com/sun/org/apache/xerces/internal/util/SymbolHash.java + src/com/sun/org/apache/xerces/internal/util/SymbolTable.java + src/com/sun/org/apache/xerces/internal/util/SynchronizedSymbolTable.java + src/com/sun/org/apache/xerces/internal/util/TeeXMLDocumentFilterImpl.java + src/com/sun/org/apache/xerces/internal/util/TypeInfoImpl.java + src/com/sun/org/apache/xerces/internal/util/URI.java + src/com/sun/org/apache/xerces/internal/util/XML11Char.java + src/com/sun/org/apache/xerces/internal/util/XMLAttributesImpl.java + src/com/sun/org/apache/xerces/internal/util/XMLAttributesIteratorImpl.java + src/com/sun/org/apache/xerces/internal/util/XMLCatalogResolver.java + src/com/sun/org/apache/xerces/internal/util/XMLChar.java + src/com/sun/org/apache/xerces/internal/util/XMLDocumentFilterImpl.java + src/com/sun/org/apache/xerces/internal/util/XMLEntityDescriptionImpl.java + src/com/sun/org/apache/xerces/internal/util/XMLErrorCode.java + src/com/sun/org/apache/xerces/internal/util/XMLGrammarPoolImpl.java + src/com/sun/org/apache/xerces/internal/util/XMLInputSourceAdaptor.java + src/com/sun/org/apache/xerces/internal/util/XMLResourceIdentifierImpl.java + src/com/sun/org/apache/xerces/internal/util/XMLStringBuffer.java + src/com/sun/org/apache/xerces/internal/util/XMLSymbols.java + src/com/sun/org/apache/xerces/internal/xinclude/MultipleScopeNamespaceSupport.java + src/com/sun/org/apache/xerces/internal/xinclude/ObjectFactory.java + src/com/sun/org/apache/xerces/internal/xinclude/SecuritySupport.java + src/com/sun/org/apache/xerces/internal/xinclude/XInclude11TextReader.java + src/com/sun/org/apache/xerces/internal/xinclude/XIncludeHandler.java + src/com/sun/org/apache/xerces/internal/xinclude/XIncludeMessageFormatter.java + src/com/sun/org/apache/xerces/internal/xinclude/XIncludeNamespaceSupport.java + src/com/sun/org/apache/xerces/internal/xinclude/XIncludeTextReader.java + src/com/sun/org/apache/xerces/internal/xinclude/XPointerElementHandler.java + src/com/sun/org/apache/xerces/internal/xinclude/XPointerFramework.java + src/com/sun/org/apache/xerces/internal/xinclude/XPointerSchema.java + src/com/sun/org/apache/xerces/internal/xni/Augmentations.java + src/com/sun/org/apache/xerces/internal/xni/NamespaceContext.java + src/com/sun/org/apache/xerces/internal/xni/QName.java + src/com/sun/org/apache/xerces/internal/xni/XMLAttributes.java + src/com/sun/org/apache/xerces/internal/xni/XMLDTDContentModelHandler.java + src/com/sun/org/apache/xerces/internal/xni/XMLDTDHandler.java + src/com/sun/org/apache/xerces/internal/xni/XMLDocumentFragmentHandler.java + src/com/sun/org/apache/xerces/internal/xni/XMLDocumentHandler.java + src/com/sun/org/apache/xerces/internal/xni/XMLLocator.java + src/com/sun/org/apache/xerces/internal/xni/XMLResourceIdentifier.java + src/com/sun/org/apache/xerces/internal/xni/XMLString.java + src/com/sun/org/apache/xerces/internal/xni/XNIException.java + src/com/sun/org/apache/xerces/internal/xni/grammars/Grammar.java + src/com/sun/org/apache/xerces/internal/xni/grammars/XMLDTDDescription.java + src/com/sun/org/apache/xerces/internal/xni/grammars/XMLGrammarDescription.java + src/com/sun/org/apache/xerces/internal/xni/grammars/XMLGrammarLoader.java + src/com/sun/org/apache/xerces/internal/xni/grammars/XMLGrammarPool.java + src/com/sun/org/apache/xerces/internal/xni/grammars/XMLSchemaDescription.java + src/com/sun/org/apache/xerces/internal/xni/grammars/XSGrammar.java + src/com/sun/org/apache/xerces/internal/xni/parser/XMLComponent.java + src/com/sun/org/apache/xerces/internal/xni/parser/XMLComponentManager.java + src/com/sun/org/apache/xerces/internal/xni/parser/XMLConfigurationException.java + src/com/sun/org/apache/xerces/internal/xni/parser/XMLDTDContentModelFilter.java + src/com/sun/org/apache/xerces/internal/xni/parser/XMLDTDContentModelSource.java + src/com/sun/org/apache/xerces/internal/xni/parser/XMLDTDFilter.java + src/com/sun/org/apache/xerces/internal/xni/parser/XMLDTDScanner.java + src/com/sun/org/apache/xerces/internal/xni/parser/XMLDTDSource.java + src/com/sun/org/apache/xerces/internal/xni/parser/XMLDocumentFilter.java + src/com/sun/org/apache/xerces/internal/xni/parser/XMLDocumentScanner.java + src/com/sun/org/apache/xerces/internal/xni/parser/XMLDocumentSource.java + src/com/sun/org/apache/xerces/internal/xni/parser/XMLEntityResolver.java + src/com/sun/org/apache/xerces/internal/xni/parser/XMLErrorHandler.java + src/com/sun/org/apache/xerces/internal/xni/parser/XMLInputSource.java + src/com/sun/org/apache/xerces/internal/xni/parser/XMLParseException.java + src/com/sun/org/apache/xerces/internal/xni/parser/XMLParserConfiguration.java + src/com/sun/org/apache/xerces/internal/xni/parser/XMLPullParserConfiguration.java + src/com/sun/org/apache/xerces/internal/xpointer/ElementSchemePointer.java + src/com/sun/org/apache/xerces/internal/xpointer/ShortHandPointer.java + src/com/sun/org/apache/xerces/internal/xpointer/XPointerErrorHandler.java + src/com/sun/org/apache/xerces/internal/xpointer/XPointerHandler.java + src/com/sun/org/apache/xerces/internal/xpointer/XPointerMessageFormatter.java + src/com/sun/org/apache/xerces/internal/xpointer/XPointerPart.java + src/com/sun/org/apache/xerces/internal/xpointer/XPointerProcessor.java + src/com/sun/org/apache/xerces/internal/xs/AttributePSVI.java + src/com/sun/org/apache/xerces/internal/xs/ElementPSVI.java + src/com/sun/org/apache/xerces/internal/xs/ItemPSVI.java + src/com/sun/org/apache/xerces/internal/xs/LSInputList.java + src/com/sun/org/apache/xerces/internal/xs/PSVIProvider.java + src/com/sun/org/apache/xerces/internal/xs/ShortList.java + src/com/sun/org/apache/xerces/internal/xs/StringList.java + src/com/sun/org/apache/xerces/internal/xs/XSAnnotation.java + src/com/sun/org/apache/xerces/internal/xs/XSAttributeDeclaration.java + src/com/sun/org/apache/xerces/internal/xs/XSAttributeGroupDefinition.java + src/com/sun/org/apache/xerces/internal/xs/XSAttributeUse.java + src/com/sun/org/apache/xerces/internal/xs/XSComplexTypeDefinition.java + src/com/sun/org/apache/xerces/internal/xs/XSConstants.java + src/com/sun/org/apache/xerces/internal/xs/XSElementDeclaration.java + src/com/sun/org/apache/xerces/internal/xs/XSException.java + src/com/sun/org/apache/xerces/internal/xs/XSFacet.java + src/com/sun/org/apache/xerces/internal/xs/XSIDCDefinition.java + src/com/sun/org/apache/xerces/internal/xs/XSImplementation.java + src/com/sun/org/apache/xerces/internal/xs/XSLoader.java + src/com/sun/org/apache/xerces/internal/xs/XSModel.java + src/com/sun/org/apache/xerces/internal/xs/XSModelGroup.java + src/com/sun/org/apache/xerces/internal/xs/XSModelGroupDefinition.java + src/com/sun/org/apache/xerces/internal/xs/XSMultiValueFacet.java + src/com/sun/org/apache/xerces/internal/xs/XSNamedMap.java + src/com/sun/org/apache/xerces/internal/xs/XSNamespaceItem.java + src/com/sun/org/apache/xerces/internal/xs/XSNamespaceItemList.java + src/com/sun/org/apache/xerces/internal/xs/XSNotationDeclaration.java + src/com/sun/org/apache/xerces/internal/xs/XSObject.java + src/com/sun/org/apache/xerces/internal/xs/XSObjectList.java + src/com/sun/org/apache/xerces/internal/xs/XSParticle.java + src/com/sun/org/apache/xerces/internal/xs/XSSimpleTypeDefinition.java + src/com/sun/org/apache/xerces/internal/xs/XSTerm.java + src/com/sun/org/apache/xerces/internal/xs/XSTypeDefinition.java + src/com/sun/org/apache/xerces/internal/xs/XSWildcard.java + src/com/sun/org/apache/xerces/internal/xs/datatypes/ByteList.java + src/com/sun/org/apache/xerces/internal/xs/datatypes/ObjectList.java + src/com/sun/org/apache/xerces/internal/xs/datatypes/XSDateTime.java + src/com/sun/org/apache/xerces/internal/xs/datatypes/XSDecimal.java + src/com/sun/org/apache/xerces/internal/xs/datatypes/XSDouble.java + src/com/sun/org/apache/xerces/internal/xs/datatypes/XSFloat.java + src/com/sun/org/apache/xerces/internal/xs/datatypes/XSQName.java + src/com/sun/org/apache/xerces/internal/xs/datatypes/package.html + src/com/sun/org/apache/xml/internal/dtm/Axis.java + src/com/sun/org/apache/xml/internal/dtm/DTM.java + src/com/sun/org/apache/xml/internal/dtm/DTMAxisIterator.java + src/com/sun/org/apache/xml/internal/dtm/DTMAxisTraverser.java + src/com/sun/org/apache/xml/internal/dtm/DTMConfigurationException.java + src/com/sun/org/apache/xml/internal/dtm/DTMDOMException.java + src/com/sun/org/apache/xml/internal/dtm/DTMException.java + src/com/sun/org/apache/xml/internal/dtm/DTMFilter.java + src/com/sun/org/apache/xml/internal/dtm/DTMIterator.java + src/com/sun/org/apache/xml/internal/dtm/DTMManager.java + src/com/sun/org/apache/xml/internal/dtm/DTMWSFilter.java + src/com/sun/org/apache/xml/internal/dtm/ObjectFactory.java + src/com/sun/org/apache/xml/internal/dtm/SecuritySupport.java + src/com/sun/org/apache/xml/internal/dtm/SecuritySupport12.java + src/com/sun/org/apache/xml/internal/dtm/ref/ChunkedIntArray.java + src/com/sun/org/apache/xml/internal/dtm/ref/CoroutineManager.java + src/com/sun/org/apache/xml/internal/dtm/ref/CoroutineParser.java + src/com/sun/org/apache/xml/internal/dtm/ref/CustomStringPool.java + src/com/sun/org/apache/xml/internal/dtm/ref/DTMAxisIterNodeList.java + src/com/sun/org/apache/xml/internal/dtm/ref/DTMAxisIteratorBase.java + src/com/sun/org/apache/xml/internal/dtm/ref/DTMChildIterNodeList.java + src/com/sun/org/apache/xml/internal/dtm/ref/DTMDefaultBase.java + src/com/sun/org/apache/xml/internal/dtm/ref/DTMDefaultBaseIterators.java + src/com/sun/org/apache/xml/internal/dtm/ref/DTMDefaultBaseTraversers.java + src/com/sun/org/apache/xml/internal/dtm/ref/DTMDocumentImpl.java + src/com/sun/org/apache/xml/internal/dtm/ref/DTMManagerDefault.java + src/com/sun/org/apache/xml/internal/dtm/ref/DTMNamedNodeMap.java + src/com/sun/org/apache/xml/internal/dtm/ref/DTMNodeIterator.java + src/com/sun/org/apache/xml/internal/dtm/ref/DTMNodeList.java + src/com/sun/org/apache/xml/internal/dtm/ref/DTMNodeListBase.java + src/com/sun/org/apache/xml/internal/dtm/ref/DTMNodeProxy.java + src/com/sun/org/apache/xml/internal/dtm/ref/DTMSafeStringPool.java + src/com/sun/org/apache/xml/internal/dtm/ref/DTMStringPool.java + src/com/sun/org/apache/xml/internal/dtm/ref/DTMTreeWalker.java + src/com/sun/org/apache/xml/internal/dtm/ref/EmptyIterator.java + src/com/sun/org/apache/xml/internal/dtm/ref/ExpandedNameTable.java + src/com/sun/org/apache/xml/internal/dtm/ref/ExtendedType.java + src/com/sun/org/apache/xml/internal/dtm/ref/IncrementalSAXSource.java + src/com/sun/org/apache/xml/internal/dtm/ref/IncrementalSAXSource_Filter.java + src/com/sun/org/apache/xml/internal/dtm/ref/IncrementalSAXSource_Xerces.java + src/com/sun/org/apache/xml/internal/dtm/ref/NodeLocator.java + src/com/sun/org/apache/xml/internal/dtm/ref/ObjectFactory.java + src/com/sun/org/apache/xml/internal/dtm/ref/SecuritySupport.java + src/com/sun/org/apache/xml/internal/dtm/ref/SecuritySupport12.java + src/com/sun/org/apache/xml/internal/dtm/ref/dom2dtm/DOM2DTM.java + src/com/sun/org/apache/xml/internal/dtm/ref/dom2dtm/DOM2DTMdefaultNamespaceDeclarationNode.java + src/com/sun/org/apache/xml/internal/dtm/ref/sax2dtm/SAX2DTM.java + src/com/sun/org/apache/xml/internal/dtm/ref/sax2dtm/SAX2DTM2.java + src/com/sun/org/apache/xml/internal/dtm/ref/sax2dtm/SAX2RTFDTM.java + src/com/sun/org/apache/xml/internal/res/XMLErrorResources.java + src/com/sun/org/apache/xml/internal/res/XMLErrorResources_ca.java + src/com/sun/org/apache/xml/internal/res/XMLErrorResources_cs.java + src/com/sun/org/apache/xml/internal/res/XMLErrorResources_de.java + src/com/sun/org/apache/xml/internal/res/XMLErrorResources_en.java + src/com/sun/org/apache/xml/internal/res/XMLErrorResources_es.java + src/com/sun/org/apache/xml/internal/res/XMLErrorResources_fr.java + src/com/sun/org/apache/xml/internal/res/XMLErrorResources_it.java + src/com/sun/org/apache/xml/internal/res/XMLErrorResources_ja.java + src/com/sun/org/apache/xml/internal/res/XMLErrorResources_ko.java + src/com/sun/org/apache/xml/internal/res/XMLErrorResources_pt_BR.java + src/com/sun/org/apache/xml/internal/res/XMLErrorResources_sk.java + src/com/sun/org/apache/xml/internal/res/XMLErrorResources_sv.java + src/com/sun/org/apache/xml/internal/res/XMLErrorResources_tr.java + src/com/sun/org/apache/xml/internal/res/XMLErrorResources_zh_CN.java + src/com/sun/org/apache/xml/internal/res/XMLErrorResources_zh_HK.java + src/com/sun/org/apache/xml/internal/res/XMLErrorResources_zh_TW.java + src/com/sun/org/apache/xml/internal/res/XMLMessages.java + src/com/sun/org/apache/xml/internal/resolver/Catalog.java + src/com/sun/org/apache/xml/internal/resolver/CatalogEntry.java + src/com/sun/org/apache/xml/internal/resolver/CatalogException.java + src/com/sun/org/apache/xml/internal/resolver/CatalogManager.java + src/com/sun/org/apache/xml/internal/resolver/Resolver.java + src/com/sun/org/apache/xml/internal/resolver/helpers/BootstrapResolver.java + src/com/sun/org/apache/xml/internal/resolver/helpers/Debug.java + src/com/sun/org/apache/xml/internal/resolver/helpers/FileURL.java + src/com/sun/org/apache/xml/internal/resolver/helpers/Namespaces.java + src/com/sun/org/apache/xml/internal/resolver/helpers/PublicId.java + src/com/sun/org/apache/xml/internal/resolver/readers/CatalogReader.java + src/com/sun/org/apache/xml/internal/resolver/readers/DOMCatalogParser.java + src/com/sun/org/apache/xml/internal/resolver/readers/DOMCatalogReader.java + src/com/sun/org/apache/xml/internal/resolver/readers/ExtendedXMLCatalogReader.java + src/com/sun/org/apache/xml/internal/resolver/readers/OASISXMLCatalogReader.java + src/com/sun/org/apache/xml/internal/resolver/readers/SAXCatalogParser.java + src/com/sun/org/apache/xml/internal/resolver/readers/SAXCatalogReader.java + src/com/sun/org/apache/xml/internal/resolver/readers/SAXParserHandler.java + src/com/sun/org/apache/xml/internal/resolver/readers/TR9401CatalogReader.java + src/com/sun/org/apache/xml/internal/resolver/readers/TextCatalogReader.java + src/com/sun/org/apache/xml/internal/resolver/readers/XCatalogReader.java + src/com/sun/org/apache/xml/internal/resolver/tools/CatalogResolver.java + src/com/sun/org/apache/xml/internal/resolver/tools/ResolvingParser.java + src/com/sun/org/apache/xml/internal/resolver/tools/ResolvingXMLFilter.java + src/com/sun/org/apache/xml/internal/resolver/tools/ResolvingXMLReader.java + src/com/sun/org/apache/xml/internal/serialize/BaseMarkupSerializer.java + src/com/sun/org/apache/xml/internal/serialize/DOMSerializer.java + src/com/sun/org/apache/xml/internal/serialize/DOMSerializerImpl.java + src/com/sun/org/apache/xml/internal/serialize/ElementState.java + src/com/sun/org/apache/xml/internal/serialize/EncodingInfo.java + src/com/sun/org/apache/xml/internal/serialize/Encodings.java + src/com/sun/org/apache/xml/internal/serialize/HTMLEntities.res + src/com/sun/org/apache/xml/internal/serialize/HTMLSerializer.java + src/com/sun/org/apache/xml/internal/serialize/HTMLdtd.java + src/com/sun/org/apache/xml/internal/serialize/IndentPrinter.java + src/com/sun/org/apache/xml/internal/serialize/LineSeparator.java + src/com/sun/org/apache/xml/internal/serialize/Method.java + src/com/sun/org/apache/xml/internal/serialize/ObjectFactory.java + src/com/sun/org/apache/xml/internal/serialize/OutputFormat.java + src/com/sun/org/apache/xml/internal/serialize/Printer.java + src/com/sun/org/apache/xml/internal/serialize/SecuritySupport.java + src/com/sun/org/apache/xml/internal/serialize/Serializer.java + src/com/sun/org/apache/xml/internal/serialize/SerializerFactory.java + src/com/sun/org/apache/xml/internal/serialize/SerializerFactoryImpl.java + src/com/sun/org/apache/xml/internal/serialize/TextSerializer.java + src/com/sun/org/apache/xml/internal/serialize/XHTMLSerializer.java + src/com/sun/org/apache/xml/internal/serialize/XML11Serializer.java + src/com/sun/org/apache/xml/internal/serialize/XMLSerializer.java + src/com/sun/org/apache/xml/internal/serializer/AttributesImplSerializer.java + src/com/sun/org/apache/xml/internal/serializer/CharInfo.java + src/com/sun/org/apache/xml/internal/serializer/DOMSerializer.java + src/com/sun/org/apache/xml/internal/serializer/ElemContext.java + src/com/sun/org/apache/xml/internal/serializer/ElemDesc.java + src/com/sun/org/apache/xml/internal/serializer/EmptySerializer.java + src/com/sun/org/apache/xml/internal/serializer/EncodingInfo.java + src/com/sun/org/apache/xml/internal/serializer/Encodings.java + src/com/sun/org/apache/xml/internal/serializer/Encodings.properties + src/com/sun/org/apache/xml/internal/serializer/ExtendedContentHandler.java + src/com/sun/org/apache/xml/internal/serializer/ExtendedLexicalHandler.java + src/com/sun/org/apache/xml/internal/serializer/HTMLEntities.properties + src/com/sun/org/apache/xml/internal/serializer/Method.java + src/com/sun/org/apache/xml/internal/serializer/NamespaceMappings.java + src/com/sun/org/apache/xml/internal/serializer/ObjectFactory.java + src/com/sun/org/apache/xml/internal/serializer/OutputPropertiesFactory.java + src/com/sun/org/apache/xml/internal/serializer/OutputPropertyUtils.java + src/com/sun/org/apache/xml/internal/serializer/SecuritySupport.java + src/com/sun/org/apache/xml/internal/serializer/SecuritySupport12.java + src/com/sun/org/apache/xml/internal/serializer/SerializationHandler.java + src/com/sun/org/apache/xml/internal/serializer/Serializer.java + src/com/sun/org/apache/xml/internal/serializer/SerializerBase.java + src/com/sun/org/apache/xml/internal/serializer/SerializerConstants.java + src/com/sun/org/apache/xml/internal/serializer/SerializerFactory.java + src/com/sun/org/apache/xml/internal/serializer/SerializerTrace.java + src/com/sun/org/apache/xml/internal/serializer/SerializerTraceWriter.java + src/com/sun/org/apache/xml/internal/serializer/ToHTMLSAXHandler.java + src/com/sun/org/apache/xml/internal/serializer/ToHTMLStream.java + src/com/sun/org/apache/xml/internal/serializer/ToSAXHandler.java + src/com/sun/org/apache/xml/internal/serializer/ToStream.java + src/com/sun/org/apache/xml/internal/serializer/ToTextSAXHandler.java + src/com/sun/org/apache/xml/internal/serializer/ToTextStream.java + src/com/sun/org/apache/xml/internal/serializer/ToUnknownStream.java + src/com/sun/org/apache/xml/internal/serializer/ToXMLSAXHandler.java + src/com/sun/org/apache/xml/internal/serializer/ToXMLStream.java + src/com/sun/org/apache/xml/internal/serializer/TransformStateSetter.java + src/com/sun/org/apache/xml/internal/serializer/TreeWalker.java + src/com/sun/org/apache/xml/internal/serializer/Utils.java + src/com/sun/org/apache/xml/internal/serializer/Version.java + src/com/sun/org/apache/xml/internal/serializer/WriterChain.java + src/com/sun/org/apache/xml/internal/serializer/WriterToASCI.java + src/com/sun/org/apache/xml/internal/serializer/WriterToUTF8Buffered.java + src/com/sun/org/apache/xml/internal/serializer/XMLEntities.properties + src/com/sun/org/apache/xml/internal/serializer/XSLOutputAttributes.java + src/com/sun/org/apache/xml/internal/serializer/output_html.properties + src/com/sun/org/apache/xml/internal/serializer/output_text.properties + src/com/sun/org/apache/xml/internal/serializer/output_unknown.properties + src/com/sun/org/apache/xml/internal/serializer/output_xml.properties + src/com/sun/org/apache/xml/internal/serializer/package.html + src/com/sun/org/apache/xml/internal/serializer/utils/AttList.java + src/com/sun/org/apache/xml/internal/serializer/utils/BoolStack.java + src/com/sun/org/apache/xml/internal/serializer/utils/DOM2Helper.java + src/com/sun/org/apache/xml/internal/serializer/utils/Messages.java + src/com/sun/org/apache/xml/internal/serializer/utils/MsgKey.java + src/com/sun/org/apache/xml/internal/serializer/utils/SerializerMessages.java + src/com/sun/org/apache/xml/internal/serializer/utils/SerializerMessages_ca.java + src/com/sun/org/apache/xml/internal/serializer/utils/SerializerMessages_cs.java + src/com/sun/org/apache/xml/internal/serializer/utils/SerializerMessages_de.java + src/com/sun/org/apache/xml/internal/serializer/utils/SerializerMessages_en.java + src/com/sun/org/apache/xml/internal/serializer/utils/SerializerMessages_es.java + src/com/sun/org/apache/xml/internal/serializer/utils/SerializerMessages_fr.java + src/com/sun/org/apache/xml/internal/serializer/utils/SerializerMessages_it.java + src/com/sun/org/apache/xml/internal/serializer/utils/SerializerMessages_ja.java + src/com/sun/org/apache/xml/internal/serializer/utils/SerializerMessages_ko.java + src/com/sun/org/apache/xml/internal/serializer/utils/SerializerMessages_sv.java + src/com/sun/org/apache/xml/internal/serializer/utils/SerializerMessages_zh_CN.java + src/com/sun/org/apache/xml/internal/serializer/utils/SerializerMessages_zh_TW.java + src/com/sun/org/apache/xml/internal/serializer/utils/StringToIntTable.java + src/com/sun/org/apache/xml/internal/serializer/utils/SystemIDResolver.java + src/com/sun/org/apache/xml/internal/serializer/utils/URI.java + src/com/sun/org/apache/xml/internal/serializer/utils/Utils.java + src/com/sun/org/apache/xml/internal/serializer/utils/WrappedRuntimeException.java + src/com/sun/org/apache/xml/internal/utils/AttList.java + src/com/sun/org/apache/xml/internal/utils/BoolStack.java + src/com/sun/org/apache/xml/internal/utils/CharKey.java + src/com/sun/org/apache/xml/internal/utils/Constants.java + src/com/sun/org/apache/xml/internal/utils/DOM2Helper.java + src/com/sun/org/apache/xml/internal/utils/DOMBuilder.java + src/com/sun/org/apache/xml/internal/utils/DOMHelper.java + src/com/sun/org/apache/xml/internal/utils/DOMOrder.java + src/com/sun/org/apache/xml/internal/utils/DefaultErrorHandler.java + src/com/sun/org/apache/xml/internal/utils/ElemDesc.java + src/com/sun/org/apache/xml/internal/utils/FastStringBuffer.java + src/com/sun/org/apache/xml/internal/utils/Hashtree2Node.java + src/com/sun/org/apache/xml/internal/utils/IntStack.java + src/com/sun/org/apache/xml/internal/utils/IntVector.java + src/com/sun/org/apache/xml/internal/utils/ListingErrorHandler.java + src/com/sun/org/apache/xml/internal/utils/LocaleUtility.java + src/com/sun/org/apache/xml/internal/utils/MutableAttrListImpl.java + src/com/sun/org/apache/xml/internal/utils/NSInfo.java + src/com/sun/org/apache/xml/internal/utils/NameSpace.java + src/com/sun/org/apache/xml/internal/utils/NamespaceSupport2.java + src/com/sun/org/apache/xml/internal/utils/NodeConsumer.java + src/com/sun/org/apache/xml/internal/utils/NodeVector.java + src/com/sun/org/apache/xml/internal/utils/ObjectFactory.java + src/com/sun/org/apache/xml/internal/utils/ObjectPool.java + src/com/sun/org/apache/xml/internal/utils/ObjectStack.java + src/com/sun/org/apache/xml/internal/utils/ObjectVector.java + src/com/sun/org/apache/xml/internal/utils/PrefixResolver.java + src/com/sun/org/apache/xml/internal/utils/PrefixResolverDefault.java + src/com/sun/org/apache/xml/internal/utils/QName.java + src/com/sun/org/apache/xml/internal/utils/RawCharacterHandler.java + src/com/sun/org/apache/xml/internal/utils/SAXSourceLocator.java + src/com/sun/org/apache/xml/internal/utils/SecuritySupport.java + src/com/sun/org/apache/xml/internal/utils/SecuritySupport12.java + src/com/sun/org/apache/xml/internal/utils/SerializableLocatorImpl.java + src/com/sun/org/apache/xml/internal/utils/StopParseException.java + src/com/sun/org/apache/xml/internal/utils/StringBufferPool.java + src/com/sun/org/apache/xml/internal/utils/StringComparable.java + src/com/sun/org/apache/xml/internal/utils/StringToIntTable.java + src/com/sun/org/apache/xml/internal/utils/StringToStringTable.java + src/com/sun/org/apache/xml/internal/utils/StringToStringTableVector.java + src/com/sun/org/apache/xml/internal/utils/StringVector.java + src/com/sun/org/apache/xml/internal/utils/StylesheetPIHandler.java + src/com/sun/org/apache/xml/internal/utils/SuballocatedByteVector.java + src/com/sun/org/apache/xml/internal/utils/SuballocatedIntVector.java + src/com/sun/org/apache/xml/internal/utils/SystemIDResolver.java + src/com/sun/org/apache/xml/internal/utils/ThreadControllerWrapper.java + src/com/sun/org/apache/xml/internal/utils/TreeWalker.java + src/com/sun/org/apache/xml/internal/utils/Trie.java + src/com/sun/org/apache/xml/internal/utils/URI.java + src/com/sun/org/apache/xml/internal/utils/UnImplNode.java + src/com/sun/org/apache/xml/internal/utils/WrappedRuntimeException.java + src/com/sun/org/apache/xml/internal/utils/WrongParserException.java + src/com/sun/org/apache/xml/internal/utils/XML11Char.java + src/com/sun/org/apache/xml/internal/utils/XMLChar.java + src/com/sun/org/apache/xml/internal/utils/XMLCharacterRecognizer.java + src/com/sun/org/apache/xml/internal/utils/XMLReaderManager.java + src/com/sun/org/apache/xml/internal/utils/XMLString.java + src/com/sun/org/apache/xml/internal/utils/XMLStringDefault.java + src/com/sun/org/apache/xml/internal/utils/XMLStringFactory.java + src/com/sun/org/apache/xml/internal/utils/XMLStringFactoryDefault.java + src/com/sun/org/apache/xml/internal/utils/package.html + src/com/sun/org/apache/xml/internal/utils/res/CharArrayWrapper.java + src/com/sun/org/apache/xml/internal/utils/res/IntArrayWrapper.java + src/com/sun/org/apache/xml/internal/utils/res/LongArrayWrapper.java + src/com/sun/org/apache/xml/internal/utils/res/StringArrayWrapper.java + src/com/sun/org/apache/xml/internal/utils/res/XResourceBundle.java + src/com/sun/org/apache/xml/internal/utils/res/XResourceBundleBase.java + src/com/sun/org/apache/xml/internal/utils/res/XResources_de.java + src/com/sun/org/apache/xml/internal/utils/res/XResources_en.java + src/com/sun/org/apache/xml/internal/utils/res/XResources_es.java + src/com/sun/org/apache/xml/internal/utils/res/XResources_fr.java + src/com/sun/org/apache/xml/internal/utils/res/XResources_it.java + src/com/sun/org/apache/xml/internal/utils/res/XResources_ja_JP_A.java + src/com/sun/org/apache/xml/internal/utils/res/XResources_ja_JP_HA.java + src/com/sun/org/apache/xml/internal/utils/res/XResources_ja_JP_HI.java + src/com/sun/org/apache/xml/internal/utils/res/XResources_ja_JP_I.java + src/com/sun/org/apache/xml/internal/utils/res/XResources_ko.java + src/com/sun/org/apache/xml/internal/utils/res/XResources_sv.java + src/com/sun/org/apache/xml/internal/utils/res/XResources_zh_CN.java + src/com/sun/org/apache/xml/internal/utils/res/XResources_zh_TW.java + src/com/sun/org/apache/xpath/internal/Arg.java + src/com/sun/org/apache/xpath/internal/CachedXPathAPI.java + src/com/sun/org/apache/xpath/internal/Expression.java + src/com/sun/org/apache/xpath/internal/ExpressionNode.java + src/com/sun/org/apache/xpath/internal/ExpressionOwner.java + src/com/sun/org/apache/xpath/internal/ExtensionsProvider.java + src/com/sun/org/apache/xpath/internal/FoundIndex.java + src/com/sun/org/apache/xpath/internal/NodeSet.java + src/com/sun/org/apache/xpath/internal/NodeSetDTM.java + src/com/sun/org/apache/xpath/internal/SourceTree.java + src/com/sun/org/apache/xpath/internal/SourceTreeManager.java + src/com/sun/org/apache/xpath/internal/VariableStack.java + src/com/sun/org/apache/xpath/internal/WhitespaceStrippingElementMatcher.java + src/com/sun/org/apache/xpath/internal/XPath.java + src/com/sun/org/apache/xpath/internal/XPathAPI.java + src/com/sun/org/apache/xpath/internal/XPathContext.java + src/com/sun/org/apache/xpath/internal/XPathException.java + src/com/sun/org/apache/xpath/internal/XPathFactory.java + src/com/sun/org/apache/xpath/internal/XPathProcessorException.java + src/com/sun/org/apache/xpath/internal/XPathVisitable.java + src/com/sun/org/apache/xpath/internal/XPathVisitor.java + src/com/sun/org/apache/xpath/internal/axes/AttributeIterator.java + src/com/sun/org/apache/xpath/internal/axes/AxesWalker.java + src/com/sun/org/apache/xpath/internal/axes/BasicTestIterator.java + src/com/sun/org/apache/xpath/internal/axes/ChildIterator.java + src/com/sun/org/apache/xpath/internal/axes/ChildTestIterator.java + src/com/sun/org/apache/xpath/internal/axes/ContextNodeList.java + src/com/sun/org/apache/xpath/internal/axes/DescendantIterator.java + src/com/sun/org/apache/xpath/internal/axes/FilterExprIterator.java + src/com/sun/org/apache/xpath/internal/axes/FilterExprIteratorSimple.java + src/com/sun/org/apache/xpath/internal/axes/FilterExprWalker.java + src/com/sun/org/apache/xpath/internal/axes/HasPositionalPredChecker.java + src/com/sun/org/apache/xpath/internal/axes/IteratorPool.java + src/com/sun/org/apache/xpath/internal/axes/LocPathIterator.java + src/com/sun/org/apache/xpath/internal/axes/MatchPatternIterator.java + src/com/sun/org/apache/xpath/internal/axes/NodeSequence.java + src/com/sun/org/apache/xpath/internal/axes/OneStepIterator.java + src/com/sun/org/apache/xpath/internal/axes/OneStepIteratorForward.java + src/com/sun/org/apache/xpath/internal/axes/PathComponent.java + src/com/sun/org/apache/xpath/internal/axes/PredicatedNodeTest.java + src/com/sun/org/apache/xpath/internal/axes/RTFIterator.java + src/com/sun/org/apache/xpath/internal/axes/ReverseAxesWalker.java + src/com/sun/org/apache/xpath/internal/axes/SelfIteratorNoPredicate.java + src/com/sun/org/apache/xpath/internal/axes/SubContextList.java + src/com/sun/org/apache/xpath/internal/axes/UnionChildIterator.java + src/com/sun/org/apache/xpath/internal/axes/UnionPathIterator.java + src/com/sun/org/apache/xpath/internal/axes/WalkerFactory.java + src/com/sun/org/apache/xpath/internal/axes/WalkingIterator.java + src/com/sun/org/apache/xpath/internal/axes/WalkingIteratorSorted.java + src/com/sun/org/apache/xpath/internal/axes/package.html + src/com/sun/org/apache/xpath/internal/compiler/Compiler.java + src/com/sun/org/apache/xpath/internal/compiler/FuncLoader.java + src/com/sun/org/apache/xpath/internal/compiler/FunctionTable.java + src/com/sun/org/apache/xpath/internal/compiler/Keywords.java + src/com/sun/org/apache/xpath/internal/compiler/Lexer.java + src/com/sun/org/apache/xpath/internal/compiler/ObjectFactory.java + src/com/sun/org/apache/xpath/internal/compiler/OpCodes.java + src/com/sun/org/apache/xpath/internal/compiler/OpMap.java + src/com/sun/org/apache/xpath/internal/compiler/OpMapVector.java + src/com/sun/org/apache/xpath/internal/compiler/PsuedoNames.java + src/com/sun/org/apache/xpath/internal/compiler/SecuritySupport.java + src/com/sun/org/apache/xpath/internal/compiler/SecuritySupport12.java + src/com/sun/org/apache/xpath/internal/compiler/XPathDumper.java + src/com/sun/org/apache/xpath/internal/compiler/XPathParser.java + src/com/sun/org/apache/xpath/internal/compiler/package.html + src/com/sun/org/apache/xpath/internal/domapi/XPathEvaluatorImpl.java + src/com/sun/org/apache/xpath/internal/domapi/XPathExpressionImpl.java + src/com/sun/org/apache/xpath/internal/domapi/XPathNSResolverImpl.java + src/com/sun/org/apache/xpath/internal/domapi/XPathNamespaceImpl.java + src/com/sun/org/apache/xpath/internal/domapi/XPathResultImpl.java + src/com/sun/org/apache/xpath/internal/domapi/XPathStylesheetDOM3Exception.java + src/com/sun/org/apache/xpath/internal/domapi/package.html + src/com/sun/org/apache/xpath/internal/functions/FuncBoolean.java + src/com/sun/org/apache/xpath/internal/functions/FuncCeiling.java + src/com/sun/org/apache/xpath/internal/functions/FuncConcat.java + src/com/sun/org/apache/xpath/internal/functions/FuncContains.java + src/com/sun/org/apache/xpath/internal/functions/FuncCount.java + src/com/sun/org/apache/xpath/internal/functions/FuncCurrent.java + src/com/sun/org/apache/xpath/internal/functions/FuncDoclocation.java + src/com/sun/org/apache/xpath/internal/functions/FuncExtElementAvailable.java + src/com/sun/org/apache/xpath/internal/functions/FuncExtFunction.java + src/com/sun/org/apache/xpath/internal/functions/FuncExtFunctionAvailable.java + src/com/sun/org/apache/xpath/internal/functions/FuncFalse.java + src/com/sun/org/apache/xpath/internal/functions/FuncFloor.java + src/com/sun/org/apache/xpath/internal/functions/FuncGenerateId.java + src/com/sun/org/apache/xpath/internal/functions/FuncId.java + src/com/sun/org/apache/xpath/internal/functions/FuncLang.java + src/com/sun/org/apache/xpath/internal/functions/FuncLast.java + src/com/sun/org/apache/xpath/internal/functions/FuncLocalPart.java + src/com/sun/org/apache/xpath/internal/functions/FuncNamespace.java + src/com/sun/org/apache/xpath/internal/functions/FuncNormalizeSpace.java + src/com/sun/org/apache/xpath/internal/functions/FuncNot.java + src/com/sun/org/apache/xpath/internal/functions/FuncNumber.java + src/com/sun/org/apache/xpath/internal/functions/FuncPosition.java + src/com/sun/org/apache/xpath/internal/functions/FuncQname.java + src/com/sun/org/apache/xpath/internal/functions/FuncRound.java + src/com/sun/org/apache/xpath/internal/functions/FuncStartsWith.java + src/com/sun/org/apache/xpath/internal/functions/FuncString.java + src/com/sun/org/apache/xpath/internal/functions/FuncStringLength.java + src/com/sun/org/apache/xpath/internal/functions/FuncSubstring.java + src/com/sun/org/apache/xpath/internal/functions/FuncSubstringAfter.java + src/com/sun/org/apache/xpath/internal/functions/FuncSubstringBefore.java + src/com/sun/org/apache/xpath/internal/functions/FuncSum.java + src/com/sun/org/apache/xpath/internal/functions/FuncSystemProperty.java + src/com/sun/org/apache/xpath/internal/functions/FuncTranslate.java + src/com/sun/org/apache/xpath/internal/functions/FuncTrue.java + src/com/sun/org/apache/xpath/internal/functions/FuncUnparsedEntityURI.java + src/com/sun/org/apache/xpath/internal/functions/Function.java + src/com/sun/org/apache/xpath/internal/functions/Function2Args.java + src/com/sun/org/apache/xpath/internal/functions/Function3Args.java + src/com/sun/org/apache/xpath/internal/functions/FunctionDef1Arg.java + src/com/sun/org/apache/xpath/internal/functions/FunctionMultiArgs.java + src/com/sun/org/apache/xpath/internal/functions/FunctionOneArg.java + src/com/sun/org/apache/xpath/internal/functions/ObjectFactory.java + src/com/sun/org/apache/xpath/internal/functions/SecuritySupport.java + src/com/sun/org/apache/xpath/internal/functions/SecuritySupport12.java + src/com/sun/org/apache/xpath/internal/functions/WrongNumberArgsException.java + src/com/sun/org/apache/xpath/internal/functions/package.html + src/com/sun/org/apache/xpath/internal/jaxp/JAXPExtensionsProvider.java + src/com/sun/org/apache/xpath/internal/jaxp/JAXPPrefixResolver.java + src/com/sun/org/apache/xpath/internal/jaxp/JAXPVariableStack.java + src/com/sun/org/apache/xpath/internal/jaxp/XPathExpressionImpl.java + src/com/sun/org/apache/xpath/internal/jaxp/XPathFactoryImpl.java + src/com/sun/org/apache/xpath/internal/jaxp/XPathImpl.java + src/com/sun/org/apache/xpath/internal/objects/DTMXRTreeFrag.java + src/com/sun/org/apache/xpath/internal/objects/XBoolean.java + src/com/sun/org/apache/xpath/internal/objects/XBooleanStatic.java + src/com/sun/org/apache/xpath/internal/objects/XMLStringFactoryImpl.java + src/com/sun/org/apache/xpath/internal/objects/XNodeSet.java + src/com/sun/org/apache/xpath/internal/objects/XNodeSetForDOM.java + src/com/sun/org/apache/xpath/internal/objects/XNull.java + src/com/sun/org/apache/xpath/internal/objects/XNumber.java + src/com/sun/org/apache/xpath/internal/objects/XObject.java + src/com/sun/org/apache/xpath/internal/objects/XObjectFactory.java + src/com/sun/org/apache/xpath/internal/objects/XRTreeFrag.java + src/com/sun/org/apache/xpath/internal/objects/XRTreeFragSelectWrapper.java + src/com/sun/org/apache/xpath/internal/objects/XString.java + src/com/sun/org/apache/xpath/internal/objects/XStringForChars.java + src/com/sun/org/apache/xpath/internal/objects/XStringForFSB.java + src/com/sun/org/apache/xpath/internal/objects/package.html + src/com/sun/org/apache/xpath/internal/operations/And.java + src/com/sun/org/apache/xpath/internal/operations/Bool.java + src/com/sun/org/apache/xpath/internal/operations/Div.java + src/com/sun/org/apache/xpath/internal/operations/Equals.java + src/com/sun/org/apache/xpath/internal/operations/Gt.java + src/com/sun/org/apache/xpath/internal/operations/Gte.java + src/com/sun/org/apache/xpath/internal/operations/Lt.java + src/com/sun/org/apache/xpath/internal/operations/Lte.java + src/com/sun/org/apache/xpath/internal/operations/Minus.java + src/com/sun/org/apache/xpath/internal/operations/Mod.java + src/com/sun/org/apache/xpath/internal/operations/Mult.java + src/com/sun/org/apache/xpath/internal/operations/Neg.java + src/com/sun/org/apache/xpath/internal/operations/NotEquals.java + src/com/sun/org/apache/xpath/internal/operations/Number.java + src/com/sun/org/apache/xpath/internal/operations/Operation.java + src/com/sun/org/apache/xpath/internal/operations/Or.java + src/com/sun/org/apache/xpath/internal/operations/Plus.java + src/com/sun/org/apache/xpath/internal/operations/Quo.java + src/com/sun/org/apache/xpath/internal/operations/String.java + src/com/sun/org/apache/xpath/internal/operations/UnaryOperation.java + src/com/sun/org/apache/xpath/internal/operations/Variable.java + src/com/sun/org/apache/xpath/internal/operations/VariableSafeAbsRef.java + src/com/sun/org/apache/xpath/internal/operations/package.html + src/com/sun/org/apache/xpath/internal/package.html + src/com/sun/org/apache/xpath/internal/patterns/ContextMatchStepPattern.java + src/com/sun/org/apache/xpath/internal/patterns/FunctionPattern.java + src/com/sun/org/apache/xpath/internal/patterns/NodeTest.java + src/com/sun/org/apache/xpath/internal/patterns/NodeTestFilter.java + src/com/sun/org/apache/xpath/internal/patterns/StepPattern.java + src/com/sun/org/apache/xpath/internal/patterns/UnionPattern.java + src/com/sun/org/apache/xpath/internal/patterns/package.html + src/com/sun/org/apache/xpath/internal/res/XPATHErrorResources.java + src/com/sun/org/apache/xpath/internal/res/XPATHErrorResources_de.java + src/com/sun/org/apache/xpath/internal/res/XPATHErrorResources_en.java + src/com/sun/org/apache/xpath/internal/res/XPATHErrorResources_es.java + src/com/sun/org/apache/xpath/internal/res/XPATHErrorResources_fr.java + src/com/sun/org/apache/xpath/internal/res/XPATHErrorResources_it.java + src/com/sun/org/apache/xpath/internal/res/XPATHErrorResources_ja.java + src/com/sun/org/apache/xpath/internal/res/XPATHErrorResources_ko.java + src/com/sun/org/apache/xpath/internal/res/XPATHErrorResources_pt_BR.java + src/com/sun/org/apache/xpath/internal/res/XPATHErrorResources_sv.java + src/com/sun/org/apache/xpath/internal/res/XPATHErrorResources_zh_CN.java + src/com/sun/org/apache/xpath/internal/res/XPATHErrorResources_zh_TW.java + src/com/sun/org/apache/xpath/internal/res/XPATHMessages.java + src/com/sun/org/apache/xpath/internal/res/package.html + src/com/sun/xml/internal/stream/Entity.java + src/com/sun/xml/internal/stream/EventFilterSupport.java + src/com/sun/xml/internal/stream/StaxEntityResolverWrapper.java + src/com/sun/xml/internal/stream/StaxErrorReporter.java + src/com/sun/xml/internal/stream/StaxXMLInputSource.java + src/com/sun/xml/internal/stream/XMLBufferListener.java + src/com/sun/xml/internal/stream/XMLEntityReader.java + src/com/sun/xml/internal/stream/XMLEntityStorage.java + src/com/sun/xml/internal/stream/XMLEventReaderImpl.java + src/com/sun/xml/internal/stream/XMLInputFactoryImpl.java + src/com/sun/xml/internal/stream/XMLOutputFactoryImpl.java + src/com/sun/xml/internal/stream/dtd/DTDGrammarUtil.java + src/com/sun/xml/internal/stream/dtd/nonvalidating/DTDGrammar.java + src/com/sun/xml/internal/stream/dtd/nonvalidating/XMLAttributeDecl.java + src/com/sun/xml/internal/stream/dtd/nonvalidating/XMLElementDecl.java + src/com/sun/xml/internal/stream/dtd/nonvalidating/XMLNotationDecl.java + src/com/sun/xml/internal/stream/dtd/nonvalidating/XMLSimpleType.java + src/com/sun/xml/internal/stream/events/AttributeImpl.java + src/com/sun/xml/internal/stream/events/CharacterEvent.java + src/com/sun/xml/internal/stream/events/CommentEvent.java + src/com/sun/xml/internal/stream/events/DTDEvent.java + src/com/sun/xml/internal/stream/events/DummyEvent.java + src/com/sun/xml/internal/stream/events/EndDocumentEvent.java + src/com/sun/xml/internal/stream/events/EndElementEvent.java + src/com/sun/xml/internal/stream/events/EntityDeclarationImpl.java + src/com/sun/xml/internal/stream/events/EntityReferenceEvent.java + src/com/sun/xml/internal/stream/events/LocationImpl.java + src/com/sun/xml/internal/stream/events/NamedEvent.java + src/com/sun/xml/internal/stream/events/NamespaceImpl.java + src/com/sun/xml/internal/stream/events/NotationDeclarationImpl.java + src/com/sun/xml/internal/stream/events/ProcessingInstructionEvent.java + src/com/sun/xml/internal/stream/events/StartDocumentEvent.java + src/com/sun/xml/internal/stream/events/StartElementEvent.java + src/com/sun/xml/internal/stream/events/XMLEventAllocatorImpl.java + src/com/sun/xml/internal/stream/events/XMLEventFactoryImpl.java + src/com/sun/xml/internal/stream/javax.xml.stream.XMLEventFactory + src/com/sun/xml/internal/stream/javax.xml.stream.XMLInputFactory + src/com/sun/xml/internal/stream/javax.xml.stream.XMLOutputFactory + src/com/sun/xml/internal/stream/util/BufferAllocator.java + src/com/sun/xml/internal/stream/util/ReadOnlyIterator.java + src/com/sun/xml/internal/stream/util/ThreadLocalBufferAllocator.java + src/com/sun/xml/internal/stream/writers/UTF8OutputStreamWriter.java + src/com/sun/xml/internal/stream/writers/WriterUtility.java + src/com/sun/xml/internal/stream/writers/XMLDOMWriterImpl.java + src/com/sun/xml/internal/stream/writers/XMLEventWriterImpl.java + src/com/sun/xml/internal/stream/writers/XMLOutputSource.java + src/com/sun/xml/internal/stream/writers/XMLStreamWriterImpl.java + src/com/sun/xml/internal/stream/writers/XMLWriter.java + src/javax/xml/XMLConstants.java + src/javax/xml/datatype/DatatypeConfigurationException.java + src/javax/xml/datatype/DatatypeConstants.java + src/javax/xml/datatype/DatatypeFactory.java + src/javax/xml/datatype/Duration.java + src/javax/xml/datatype/FactoryFinder.java + src/javax/xml/datatype/SecuritySupport.java + src/javax/xml/datatype/XMLGregorianCalendar.java + src/javax/xml/datatype/package.html + src/javax/xml/namespace/NamespaceContext.java + src/javax/xml/namespace/QName.java + src/javax/xml/namespace/package.html + src/javax/xml/parsers/DocumentBuilder.java + src/javax/xml/parsers/DocumentBuilderFactory.java + src/javax/xml/parsers/FactoryConfigurationError.java + src/javax/xml/parsers/FactoryFinder.java + src/javax/xml/parsers/ParserConfigurationException.java + src/javax/xml/parsers/SAXParser.java + src/javax/xml/parsers/SAXParserFactory.java + src/javax/xml/parsers/SecuritySupport.java + src/javax/xml/parsers/package.html + src/javax/xml/stream/EventFilter.java + src/javax/xml/stream/FactoryConfigurationError.java + src/javax/xml/stream/FactoryFinder.java + src/javax/xml/stream/Location.java + src/javax/xml/stream/SecuritySupport.java + src/javax/xml/stream/StreamFilter.java + src/javax/xml/stream/XMLEventFactory.java + src/javax/xml/stream/XMLEventReader.java + src/javax/xml/stream/XMLEventWriter.java + src/javax/xml/stream/XMLInputFactory.java + src/javax/xml/stream/XMLOutputFactory.java + src/javax/xml/stream/XMLReporter.java + src/javax/xml/stream/XMLResolver.java + src/javax/xml/stream/XMLStreamConstants.java + src/javax/xml/stream/XMLStreamException.java + src/javax/xml/stream/XMLStreamReader.java + src/javax/xml/stream/XMLStreamWriter.java + src/javax/xml/stream/events/Attribute.java + src/javax/xml/stream/events/Characters.java + src/javax/xml/stream/events/Comment.java + src/javax/xml/stream/events/DTD.java + src/javax/xml/stream/events/EndDocument.java + src/javax/xml/stream/events/EndElement.java + src/javax/xml/stream/events/EntityDeclaration.java + src/javax/xml/stream/events/EntityReference.java + src/javax/xml/stream/events/Namespace.java + src/javax/xml/stream/events/NotationDeclaration.java + src/javax/xml/stream/events/ProcessingInstruction.java + src/javax/xml/stream/events/StartDocument.java + src/javax/xml/stream/events/StartElement.java + src/javax/xml/stream/events/XMLEvent.java + src/javax/xml/stream/util/EventReaderDelegate.java + src/javax/xml/stream/util/StreamReaderDelegate.java + src/javax/xml/stream/util/XMLEventAllocator.java + src/javax/xml/stream/util/XMLEventConsumer.java + src/javax/xml/transform/ErrorListener.java + src/javax/xml/transform/FactoryFinder.java + src/javax/xml/transform/OutputKeys.java + src/javax/xml/transform/Result.java + src/javax/xml/transform/SecuritySupport.java + src/javax/xml/transform/Source.java + src/javax/xml/transform/SourceLocator.java + src/javax/xml/transform/Templates.java + src/javax/xml/transform/Transformer.java + src/javax/xml/transform/TransformerConfigurationException.java + src/javax/xml/transform/TransformerException.java + src/javax/xml/transform/TransformerFactory.java + src/javax/xml/transform/TransformerFactoryConfigurationError.java + src/javax/xml/transform/URIResolver.java + src/javax/xml/transform/dom/DOMLocator.java + src/javax/xml/transform/dom/DOMResult.java + src/javax/xml/transform/dom/DOMSource.java + src/javax/xml/transform/dom/package.html + src/javax/xml/transform/overview.html + src/javax/xml/transform/package.html + src/javax/xml/transform/sax/SAXResult.java + src/javax/xml/transform/sax/SAXSource.java + src/javax/xml/transform/sax/SAXTransformerFactory.java + src/javax/xml/transform/sax/TemplatesHandler.java + src/javax/xml/transform/sax/TransformerHandler.java + src/javax/xml/transform/sax/package.html + src/javax/xml/transform/stax/StAXResult.java + src/javax/xml/transform/stax/StAXSource.java + src/javax/xml/transform/stax/package.html + src/javax/xml/transform/stream/StreamResult.java + src/javax/xml/transform/stream/StreamSource.java + src/javax/xml/transform/stream/package.html + src/javax/xml/validation/Schema.java + src/javax/xml/validation/SchemaFactory.java + src/javax/xml/validation/SchemaFactoryFinder.java + src/javax/xml/validation/SchemaFactoryLoader.java + src/javax/xml/validation/SecuritySupport.java + src/javax/xml/validation/TypeInfoProvider.java + src/javax/xml/validation/Validator.java + src/javax/xml/validation/ValidatorHandler.java + src/javax/xml/validation/package.html + src/javax/xml/xpath/SecuritySupport.java + src/javax/xml/xpath/XPath.java + src/javax/xml/xpath/XPathConstants.java + src/javax/xml/xpath/XPathException.java + src/javax/xml/xpath/XPathExpression.java + src/javax/xml/xpath/XPathExpressionException.java + src/javax/xml/xpath/XPathFactory.java + src/javax/xml/xpath/XPathFactoryConfigurationException.java + src/javax/xml/xpath/XPathFactoryFinder.java + src/javax/xml/xpath/XPathFunction.java + src/javax/xml/xpath/XPathFunctionException.java + src/javax/xml/xpath/XPathFunctionResolver.java + src/javax/xml/xpath/XPathVariableResolver.java + src/javax/xml/xpath/package.html + src/org/w3c/dom/Attr.java + src/org/w3c/dom/CDATASection.java + src/org/w3c/dom/CharacterData.java + src/org/w3c/dom/Comment.java + src/org/w3c/dom/DOMConfiguration.java + src/org/w3c/dom/DOMError.java + src/org/w3c/dom/DOMErrorHandler.java + src/org/w3c/dom/DOMException.java + src/org/w3c/dom/DOMImplementation.java + src/org/w3c/dom/DOMImplementationList.java + src/org/w3c/dom/DOMImplementationSource.java + src/org/w3c/dom/DOMLocator.java + src/org/w3c/dom/DOMStringList.java + src/org/w3c/dom/Document.java + src/org/w3c/dom/DocumentFragment.java + src/org/w3c/dom/DocumentType.java + src/org/w3c/dom/Element.java + src/org/w3c/dom/Entity.java + src/org/w3c/dom/EntityReference.java + src/org/w3c/dom/NameList.java + src/org/w3c/dom/NamedNodeMap.java + src/org/w3c/dom/Node.java + src/org/w3c/dom/NodeList.java + src/org/w3c/dom/Notation.java + src/org/w3c/dom/ProcessingInstruction.java + src/org/w3c/dom/Text.java + src/org/w3c/dom/TypeInfo.java + src/org/w3c/dom/UserDataHandler.java + src/org/w3c/dom/bootstrap/DOMImplementationRegistry.java + src/org/w3c/dom/css/CSS2Properties.java + src/org/w3c/dom/css/CSSCharsetRule.java + src/org/w3c/dom/css/CSSFontFaceRule.java + src/org/w3c/dom/css/CSSImportRule.java + src/org/w3c/dom/css/CSSMediaRule.java + src/org/w3c/dom/css/CSSPageRule.java + src/org/w3c/dom/css/CSSPrimitiveValue.java + src/org/w3c/dom/css/CSSRule.java + src/org/w3c/dom/css/CSSRuleList.java + src/org/w3c/dom/css/CSSStyleDeclaration.java + src/org/w3c/dom/css/CSSStyleRule.java + src/org/w3c/dom/css/CSSStyleSheet.java + src/org/w3c/dom/css/CSSUnknownRule.java + src/org/w3c/dom/css/CSSValue.java + src/org/w3c/dom/css/CSSValueList.java + src/org/w3c/dom/css/Counter.java + src/org/w3c/dom/css/DOMImplementationCSS.java + src/org/w3c/dom/css/DocumentCSS.java + src/org/w3c/dom/css/ElementCSSInlineStyle.java + src/org/w3c/dom/css/RGBColor.java + src/org/w3c/dom/css/Rect.java + src/org/w3c/dom/css/ViewCSS.java + src/org/w3c/dom/events/DocumentEvent.java + src/org/w3c/dom/events/Event.java + src/org/w3c/dom/events/EventException.java + src/org/w3c/dom/events/EventListener.java + src/org/w3c/dom/events/EventTarget.java + src/org/w3c/dom/events/MouseEvent.java + src/org/w3c/dom/events/MutationEvent.java + src/org/w3c/dom/events/UIEvent.java + src/org/w3c/dom/html/HTMLAnchorElement.java + src/org/w3c/dom/html/HTMLAppletElement.java + src/org/w3c/dom/html/HTMLAreaElement.java + src/org/w3c/dom/html/HTMLBRElement.java + src/org/w3c/dom/html/HTMLBaseElement.java + src/org/w3c/dom/html/HTMLBaseFontElement.java + src/org/w3c/dom/html/HTMLBodyElement.java + src/org/w3c/dom/html/HTMLButtonElement.java + src/org/w3c/dom/html/HTMLCollection.java + src/org/w3c/dom/html/HTMLDListElement.java + src/org/w3c/dom/html/HTMLDOMImplementation.java + src/org/w3c/dom/html/HTMLDirectoryElement.java + src/org/w3c/dom/html/HTMLDivElement.java + src/org/w3c/dom/html/HTMLDocument.java + src/org/w3c/dom/html/HTMLElement.java + src/org/w3c/dom/html/HTMLFieldSetElement.java + src/org/w3c/dom/html/HTMLFontElement.java + src/org/w3c/dom/html/HTMLFormElement.java + src/org/w3c/dom/html/HTMLFrameElement.java + src/org/w3c/dom/html/HTMLFrameSetElement.java + src/org/w3c/dom/html/HTMLHRElement.java + src/org/w3c/dom/html/HTMLHeadElement.java + src/org/w3c/dom/html/HTMLHeadingElement.java + src/org/w3c/dom/html/HTMLHtmlElement.java + src/org/w3c/dom/html/HTMLIFrameElement.java + src/org/w3c/dom/html/HTMLImageElement.java + src/org/w3c/dom/html/HTMLInputElement.java + src/org/w3c/dom/html/HTMLIsIndexElement.java + src/org/w3c/dom/html/HTMLLIElement.java + src/org/w3c/dom/html/HTMLLabelElement.java + src/org/w3c/dom/html/HTMLLegendElement.java + src/org/w3c/dom/html/HTMLLinkElement.java + src/org/w3c/dom/html/HTMLMapElement.java + src/org/w3c/dom/html/HTMLMenuElement.java + src/org/w3c/dom/html/HTMLMetaElement.java + src/org/w3c/dom/html/HTMLModElement.java + src/org/w3c/dom/html/HTMLOListElement.java + src/org/w3c/dom/html/HTMLObjectElement.java + src/org/w3c/dom/html/HTMLOptGroupElement.java + src/org/w3c/dom/html/HTMLOptionElement.java + src/org/w3c/dom/html/HTMLParagraphElement.java + src/org/w3c/dom/html/HTMLParamElement.java + src/org/w3c/dom/html/HTMLPreElement.java + src/org/w3c/dom/html/HTMLQuoteElement.java + src/org/w3c/dom/html/HTMLScriptElement.java + src/org/w3c/dom/html/HTMLSelectElement.java + src/org/w3c/dom/html/HTMLStyleElement.java + src/org/w3c/dom/html/HTMLTableCaptionElement.java + src/org/w3c/dom/html/HTMLTableCellElement.java + src/org/w3c/dom/html/HTMLTableColElement.java + src/org/w3c/dom/html/HTMLTableElement.java + src/org/w3c/dom/html/HTMLTableRowElement.java + src/org/w3c/dom/html/HTMLTableSectionElement.java + src/org/w3c/dom/html/HTMLTextAreaElement.java + src/org/w3c/dom/html/HTMLTitleElement.java + src/org/w3c/dom/html/HTMLUListElement.java + src/org/w3c/dom/ls/DOMImplementationLS.java + src/org/w3c/dom/ls/LSException.java + src/org/w3c/dom/ls/LSInput.java + src/org/w3c/dom/ls/LSLoadEvent.java + src/org/w3c/dom/ls/LSOutput.java + src/org/w3c/dom/ls/LSParser.java + src/org/w3c/dom/ls/LSParserFilter.java + src/org/w3c/dom/ls/LSProgressEvent.java + src/org/w3c/dom/ls/LSResourceResolver.java + src/org/w3c/dom/ls/LSSerializer.java + src/org/w3c/dom/ls/LSSerializerFilter.java + src/org/w3c/dom/package.html + src/org/w3c/dom/ranges/DocumentRange.java + src/org/w3c/dom/ranges/Range.java + src/org/w3c/dom/ranges/RangeException.java + src/org/w3c/dom/ranges/package.html + src/org/w3c/dom/stylesheets/DocumentStyle.java + src/org/w3c/dom/stylesheets/LinkStyle.java + src/org/w3c/dom/stylesheets/MediaList.java + src/org/w3c/dom/stylesheets/StyleSheet.java + src/org/w3c/dom/stylesheets/StyleSheetList.java + src/org/w3c/dom/traversal/DocumentTraversal.java + src/org/w3c/dom/traversal/NodeFilter.java + src/org/w3c/dom/traversal/NodeIterator.java + src/org/w3c/dom/traversal/TreeWalker.java + src/org/w3c/dom/views/AbstractView.java + src/org/w3c/dom/views/DocumentView.java + src/org/w3c/dom/xpath/COPYRIGHT.html + src/org/w3c/dom/xpath/XPathEvaluator.java + src/org/w3c/dom/xpath/XPathException.java + src/org/w3c/dom/xpath/XPathExpression.java + src/org/w3c/dom/xpath/XPathNSResolver.java + src/org/w3c/dom/xpath/XPathNamespace.java + src/org/w3c/dom/xpath/XPathResult.java + src/org/xml/sax/AttributeList.java + src/org/xml/sax/Attributes.java + src/org/xml/sax/COPYING + src/org/xml/sax/COPYING.txt + src/org/xml/sax/ContentHandler.java + src/org/xml/sax/DTDHandler.java + src/org/xml/sax/DocumentHandler.java + src/org/xml/sax/EntityResolver.java + src/org/xml/sax/ErrorHandler.java + src/org/xml/sax/HandlerBase.java + src/org/xml/sax/InputSource.java + src/org/xml/sax/Locator.java + src/org/xml/sax/Parser.java + src/org/xml/sax/SAXException.java + src/org/xml/sax/SAXNotRecognizedException.java + src/org/xml/sax/SAXNotSupportedException.java + src/org/xml/sax/SAXParseException.java + src/org/xml/sax/XMLFilter.java + src/org/xml/sax/XMLReader.java + src/org/xml/sax/ext/Attributes2.java + src/org/xml/sax/ext/Attributes2Impl.java + src/org/xml/sax/ext/DeclHandler.java + src/org/xml/sax/ext/DefaultHandler2.java + src/org/xml/sax/ext/EntityResolver2.java + src/org/xml/sax/ext/LexicalHandler.java + src/org/xml/sax/ext/Locator2.java + src/org/xml/sax/ext/Locator2Impl.java + src/org/xml/sax/ext/package.html + src/org/xml/sax/helpers/AttributeListImpl.java + src/org/xml/sax/helpers/AttributesImpl.java + src/org/xml/sax/helpers/DefaultHandler.java + src/org/xml/sax/helpers/LocatorImpl.java + src/org/xml/sax/helpers/NamespaceSupport.java + src/org/xml/sax/helpers/NewInstance.java + src/org/xml/sax/helpers/ParserAdapter.java + src/org/xml/sax/helpers/ParserFactory.java + src/org/xml/sax/helpers/XMLFilterImpl.java + src/org/xml/sax/helpers/XMLReaderAdapter.java + src/org/xml/sax/helpers/XMLReaderFactory.java + src/org/xml/sax/helpers/package.html + src/org/xml/sax/package.html - src/share/classes/com/sun/java_cup/internal/runtime/Scanner.java - src/share/classes/com/sun/java_cup/internal/runtime/Symbol.java - src/share/classes/com/sun/java_cup/internal/runtime/lr_parser.java - src/share/classes/com/sun/java_cup/internal/runtime/virtual_parse_stack.java - src/share/classes/com/sun/org/apache/bcel/internal/Constants.java - src/share/classes/com/sun/org/apache/bcel/internal/ExceptionConstants.java - src/share/classes/com/sun/org/apache/bcel/internal/Repository.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/AccessFlags.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/Attribute.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/AttributeReader.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/ClassFormatException.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/ClassParser.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/Code.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/CodeException.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/Constant.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/ConstantCP.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/ConstantClass.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/ConstantDouble.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/ConstantFieldref.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/ConstantFloat.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/ConstantInteger.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/ConstantInterfaceMethodref.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/ConstantLong.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/ConstantMethodref.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/ConstantNameAndType.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/ConstantObject.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/ConstantPool.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/ConstantString.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/ConstantUtf8.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/ConstantValue.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/Deprecated.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/DescendingVisitor.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/EmptyVisitor.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/ExceptionTable.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/Field.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/FieldOrMethod.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/InnerClass.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/InnerClasses.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/JavaClass.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/LineNumber.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/LineNumberTable.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/LocalVariable.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/LocalVariableTable.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/Method.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/Node.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/PMGClass.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/Signature.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/SourceFile.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/StackMap.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/StackMapEntry.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/StackMapType.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/Synthetic.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/Unknown.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/Utility.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/Visitor.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/package.html - src/share/classes/com/sun/org/apache/bcel/internal/generic/AALOAD.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/AASTORE.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/ACONST_NULL.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/ALOAD.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/ANEWARRAY.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/ARETURN.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/ARRAYLENGTH.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/ASTORE.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/ATHROW.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/AllocationInstruction.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/ArithmeticInstruction.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/ArrayInstruction.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/ArrayType.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/BALOAD.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/BASTORE.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/BIPUSH.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/BREAKPOINT.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/BasicType.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/BranchHandle.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/BranchInstruction.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/CALOAD.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/CASTORE.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/CHECKCAST.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/CPInstruction.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/ClassGen.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/ClassGenException.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/ClassObserver.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/CodeExceptionGen.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/CompoundInstruction.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/ConstantPoolGen.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/ConstantPushInstruction.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/ConversionInstruction.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/D2F.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/D2I.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/D2L.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/DADD.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/DALOAD.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/DASTORE.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/DCMPG.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/DCMPL.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/DCONST.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/DDIV.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/DLOAD.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/DMUL.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/DNEG.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/DREM.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/DRETURN.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/DSTORE.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/DSUB.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/DUP.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/DUP2.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/DUP2_X1.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/DUP2_X2.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/DUP_X1.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/DUP_X2.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/EmptyVisitor.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/ExceptionThrower.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/F2D.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/F2I.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/F2L.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/FADD.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/FALOAD.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/FASTORE.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/FCMPG.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/FCMPL.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/FCONST.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/FDIV.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/FLOAD.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/FMUL.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/FNEG.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/FREM.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/FRETURN.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/FSTORE.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/FSUB.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/FieldGen.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/FieldGenOrMethodGen.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/FieldInstruction.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/FieldObserver.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/FieldOrMethod.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/GETFIELD.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/GETSTATIC.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/GOTO.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/GOTO_W.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/GotoInstruction.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/I2B.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/I2C.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/I2D.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/I2F.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/I2L.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/I2S.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/IADD.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/IALOAD.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/IAND.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/IASTORE.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/ICONST.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/IDIV.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/IFEQ.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/IFGE.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/IFGT.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/IFLE.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/IFLT.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/IFNE.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/IFNONNULL.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/IFNULL.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/IF_ACMPEQ.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/IF_ACMPNE.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/IF_ICMPEQ.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/IF_ICMPGE.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/IF_ICMPGT.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/IF_ICMPLE.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/IF_ICMPLT.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/IF_ICMPNE.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/IINC.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/ILOAD.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/IMPDEP1.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/IMPDEP2.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/IMUL.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/INEG.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/INSTANCEOF.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/INVOKEINTERFACE.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/INVOKESPECIAL.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/INVOKESTATIC.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/INVOKEVIRTUAL.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/IOR.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/IREM.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/IRETURN.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/ISHL.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/ISHR.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/ISTORE.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/ISUB.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/IUSHR.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/IXOR.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/IfInstruction.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/IndexedInstruction.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/Instruction.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/InstructionComparator.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/InstructionConstants.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/InstructionFactory.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/InstructionHandle.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/InstructionList.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/InstructionListObserver.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/InstructionTargeter.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/InvokeInstruction.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/JSR.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/JSR_W.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/JsrInstruction.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/L2D.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/L2F.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/L2I.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/LADD.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/LALOAD.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/LAND.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/LASTORE.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/LCMP.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/LCONST.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/LDC.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/LDC2_W.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/LDC_W.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/LDIV.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/LLOAD.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/LMUL.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/LNEG.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/LOOKUPSWITCH.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/LOR.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/LREM.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/LRETURN.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/LSHL.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/LSHR.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/LSTORE.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/LSUB.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/LUSHR.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/LXOR.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/LineNumberGen.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/LoadClass.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/LoadInstruction.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/LocalVariableGen.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/LocalVariableInstruction.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/MONITORENTER.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/MONITOREXIT.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/MULTIANEWARRAY.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/MethodGen.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/MethodObserver.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/NEW.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/NEWARRAY.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/NOP.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/NamedAndTyped.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/ObjectType.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/POP.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/POP2.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/PUSH.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/PUTFIELD.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/PUTSTATIC.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/PopInstruction.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/PushInstruction.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/RET.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/RETURN.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/ReferenceType.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/ReturnInstruction.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/ReturnaddressType.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/SALOAD.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/SASTORE.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/SIPUSH.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/SWAP.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/SWITCH.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/Select.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/StackConsumer.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/StackInstruction.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/StackProducer.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/StoreInstruction.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/TABLESWITCH.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/TargetLostException.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/Type.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/TypedInstruction.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/UnconditionalBranch.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/VariableLengthInstruction.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/Visitor.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/package.html - src/share/classes/com/sun/org/apache/bcel/internal/package.html - src/share/classes/com/sun/org/apache/bcel/internal/util/AttributeHTML.java - src/share/classes/com/sun/org/apache/bcel/internal/util/BCELFactory.java - src/share/classes/com/sun/org/apache/bcel/internal/util/BCELifier.java - src/share/classes/com/sun/org/apache/bcel/internal/util/ByteSequence.java - src/share/classes/com/sun/org/apache/bcel/internal/util/Class2HTML.java - src/share/classes/com/sun/org/apache/bcel/internal/util/ClassLoader.java - src/share/classes/com/sun/org/apache/bcel/internal/util/ClassLoaderRepository.java - src/share/classes/com/sun/org/apache/bcel/internal/util/ClassPath.java - src/share/classes/com/sun/org/apache/bcel/internal/util/ClassQueue.java - src/share/classes/com/sun/org/apache/bcel/internal/util/ClassSet.java - src/share/classes/com/sun/org/apache/bcel/internal/util/ClassStack.java - src/share/classes/com/sun/org/apache/bcel/internal/util/ClassVector.java - src/share/classes/com/sun/org/apache/bcel/internal/util/CodeHTML.java - src/share/classes/com/sun/org/apache/bcel/internal/util/ConstantHTML.java - src/share/classes/com/sun/org/apache/bcel/internal/util/InstructionFinder.java - src/share/classes/com/sun/org/apache/bcel/internal/util/JavaWrapper.java - src/share/classes/com/sun/org/apache/bcel/internal/util/MethodHTML.java - src/share/classes/com/sun/org/apache/bcel/internal/util/Repository.java - src/share/classes/com/sun/org/apache/bcel/internal/util/SyntheticRepository.java - src/share/classes/com/sun/org/apache/bcel/internal/util/package.html - src/share/classes/com/sun/org/apache/regexp/internal/CharacterArrayCharacterIterator.java - src/share/classes/com/sun/org/apache/regexp/internal/CharacterIterator.java - src/share/classes/com/sun/org/apache/regexp/internal/RE.java - src/share/classes/com/sun/org/apache/regexp/internal/RECompiler.java - src/share/classes/com/sun/org/apache/regexp/internal/REDebugCompiler.java - src/share/classes/com/sun/org/apache/regexp/internal/REProgram.java - src/share/classes/com/sun/org/apache/regexp/internal/RESyntaxException.java - src/share/classes/com/sun/org/apache/regexp/internal/RETest.java - src/share/classes/com/sun/org/apache/regexp/internal/REUtil.java - src/share/classes/com/sun/org/apache/regexp/internal/ReaderCharacterIterator.java - src/share/classes/com/sun/org/apache/regexp/internal/StreamCharacterIterator.java - src/share/classes/com/sun/org/apache/regexp/internal/StringCharacterIterator.java - src/share/classes/com/sun/org/apache/regexp/internal/recompile.java - src/share/classes/com/sun/org/apache/xalan/META-INF/services/javax.xml.transform.TransformerFactory - src/share/classes/com/sun/org/apache/xalan/META-INF/services/javax.xml.xpath.XPathFactory - src/share/classes/com/sun/org/apache/xalan/META-INF/services/org.apache.xml.dtm.DTMManager - src/share/classes/com/sun/org/apache/xalan/internal/Version.java - src/share/classes/com/sun/org/apache/xalan/internal/extensions/ExpressionContext.java - src/share/classes/com/sun/org/apache/xalan/internal/extensions/package.html - src/share/classes/com/sun/org/apache/xalan/internal/lib/ExsltBase.java - src/share/classes/com/sun/org/apache/xalan/internal/lib/ExsltCommon.java - src/share/classes/com/sun/org/apache/xalan/internal/lib/ExsltDatetime.java - src/share/classes/com/sun/org/apache/xalan/internal/lib/ExsltDynamic.java - src/share/classes/com/sun/org/apache/xalan/internal/lib/ExsltMath.java - src/share/classes/com/sun/org/apache/xalan/internal/lib/ExsltSets.java - src/share/classes/com/sun/org/apache/xalan/internal/lib/ExsltStrings.java - src/share/classes/com/sun/org/apache/xalan/internal/lib/Extensions.java - src/share/classes/com/sun/org/apache/xalan/internal/lib/NodeInfo.java - src/share/classes/com/sun/org/apache/xalan/internal/lib/ObjectFactory.java - src/share/classes/com/sun/org/apache/xalan/internal/lib/SecuritySupport.java - src/share/classes/com/sun/org/apache/xalan/internal/lib/SecuritySupport12.java - src/share/classes/com/sun/org/apache/xalan/internal/lib/package.html - src/share/classes/com/sun/org/apache/xalan/internal/res/XSLMessages.java - src/share/classes/com/sun/org/apache/xalan/internal/res/XSLTErrorResources.java - src/share/classes/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_de.java - src/share/classes/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_en.java - src/share/classes/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_es.java - src/share/classes/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_fr.java - src/share/classes/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_it.java - src/share/classes/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_ja.java - src/share/classes/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_ko.java - src/share/classes/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_pt_BR.java - src/share/classes/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_sv.java - src/share/classes/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_zh_CN.java - src/share/classes/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_zh_TW.java - src/share/classes/com/sun/org/apache/xalan/internal/res/XSLTInfo.properties - src/share/classes/com/sun/org/apache/xalan/internal/res/package.html - src/share/classes/com/sun/org/apache/xalan/internal/templates/Constants.java - src/share/classes/com/sun/org/apache/xalan/internal/templates/package.html - src/share/classes/com/sun/org/apache/xalan/internal/xslt/EnvironmentCheck.java - src/share/classes/com/sun/org/apache/xalan/internal/xslt/ObjectFactory.java - src/share/classes/com/sun/org/apache/xalan/internal/xslt/Process.java - src/share/classes/com/sun/org/apache/xalan/internal/xslt/SecuritySupport.java - src/share/classes/com/sun/org/apache/xalan/internal/xslt/SecuritySupport12.java - src/share/classes/com/sun/org/apache/xalan/internal/xslt/package.html - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/CollatorFactory.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/DOM.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/DOMCache.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/DOMEnhancedForDTM.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/NodeIterator.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/ProcessorVersion.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/StripFilter.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/Translet.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/TransletException.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/cmdline/Compile.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/cmdline/ObjectFactory.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/cmdline/SecuritySupport.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/cmdline/SecuritySupport12.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/cmdline/Transform.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/cmdline/getopt/GetOpt.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/cmdline/getopt/GetOptsException.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/cmdline/getopt/IllegalArgumentException.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/cmdline/getopt/MissingOptArgException.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/AbsoluteLocationPath.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/AbsolutePathPattern.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/AlternativePattern.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/AncestorPattern.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/ApplyImports.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/ApplyTemplates.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/ArgumentList.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Attribute.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/AttributeSet.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/AttributeValue.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/AttributeValueTemplate.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/BinOpExpr.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/BooleanCall.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/BooleanExpr.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/CallTemplate.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/CastCall.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/CastExpr.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/CeilingCall.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Choose.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Closure.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Comment.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/CompilerException.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/ConcatCall.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Constants.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/ContainsCall.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Copy.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/CopyOf.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/CurrentCall.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/DecimalFormatting.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/DocumentCall.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/ElementAvailableCall.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/EqualityExpr.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Expression.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Fallback.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/FilterExpr.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/FilterParentPath.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/FilteredAbsoluteLocationPath.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/FloorCall.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/FlowList.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/ForEach.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/FormatNumberCall.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/FunctionAvailableCall.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/FunctionCall.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/GenerateIdCall.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/IdKeyPattern.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/IdPattern.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/If.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/IllegalCharException.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Import.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Include.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Instruction.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/IntExpr.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Key.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/KeyCall.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/KeyPattern.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/LangCall.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/LastCall.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/LiteralAttribute.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/LiteralElement.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/LiteralExpr.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/LocalNameCall.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/LocationPathPattern.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/LogicalExpr.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Makefile.inc - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Message.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Mode.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/NameBase.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/NameCall.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/NamespaceAlias.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/NamespaceUriCall.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/NodeTest.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/NotCall.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Number.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/NumberCall.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/ObjectFactory.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Otherwise.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Output.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Param.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/ParameterRef.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/ParentLocationPath.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/ParentPattern.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Parser.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Pattern.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/PositionCall.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Predicate.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/ProcessingInstruction.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/ProcessingInstructionPattern.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/QName.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/RealExpr.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/RelationalExpr.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/RelativeLocationPath.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/RelativePathPattern.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/RoundCall.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/SecuritySupport.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/SecuritySupport12.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/SimpleAttributeValue.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Sort.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/SourceLoader.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/StartsWithCall.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Step.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/StepPattern.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/StringCall.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/StringLengthCall.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Stylesheet.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/SymbolTable.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/SyntaxTreeNode.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Template.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/TestSeq.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Text.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/TopLevelElement.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/TransletOutput.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/UnaryOpExpr.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/UnionPathExpr.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/UnparsedEntityUriCall.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/UnresolvedRef.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/UnsupportedElement.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/UseAttributeSets.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/ValueOf.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Variable.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/VariableBase.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/VariableRef.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/VariableRefBase.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/When.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Whitespace.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/WithParam.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/XPathLexer.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/XPathParser.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/XSLTC.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/XslAttribute.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/XslElement.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/sym.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/AttributeSetMethodGenerator.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/BooleanType.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ClassGenerator.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/CompareGenerator.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_ca.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_cs.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_de.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_es.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_fr.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_it.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_ja.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_ko.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_pt_BR.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_sk.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_sv.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_zh_CN.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_zh_TW.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMsg.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/FilterGenerator.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/IntType.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/MatchGenerator.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/MethodGenerator.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/MethodType.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/MultiHashtable.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/NamedMethodGenerator.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/NodeCounterGenerator.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/NodeSetType.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/NodeSortRecordFactGenerator.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/NodeSortRecordGenerator.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/NodeType.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/NumberType.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ObjectFactory.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ObjectType.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/RealType.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ReferenceType.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ResultTreeType.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/RtMethodGenerator.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/SecuritySupport.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/SecuritySupport12.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/SlotAllocator.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/StringStack.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/StringType.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/TestGenerator.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/Type.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/TypeCheckError.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/Util.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/VoidType.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/xpath.cup - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/xpath.lex - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/AbsoluteIterator.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/AdaptiveResultTreeImpl.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/AnyNodeCounter.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/BitArray.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/CachedNodeListIterator.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/ClonedNodeListIterator.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/CollatorFactoryBase.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/CurrentNodeListFilter.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/CurrentNodeListIterator.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/DOMAdapter.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/DOMBuilder.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/DOMWSFilter.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/DocumentCache.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/DupFilterIterator.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/EmptyFilter.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/ExtendedSAX.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/Filter.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/FilterIterator.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/FilteredStepIterator.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/ForwardPositionIterator.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/KeyIndex.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/LoadDocument.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/MatchingIterator.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/MultiDOM.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/MultiValuedNodeHeapIterator.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/MultipleNodeCounter.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/NodeCounter.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/NodeIteratorBase.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/NodeSortRecord.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/NodeSortRecordFactory.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/NthIterator.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/ObjectFactory.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/SAXImpl.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/SecuritySupport.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/SecuritySupport12.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/SimpleResultTreeImpl.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/SingleNodeCounter.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/SingletonIterator.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/SortSettings.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/SortingIterator.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/StepIterator.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/StripWhitespaceFilter.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/UnionIterator.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/XSLTCDTMManager.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/javax.xml.transform.TransformerFactory - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/AbstractTranslet.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/Attributes.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/BasisLibrary.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/Constants.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/ErrorMessages.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/ErrorMessages_ca.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/ErrorMessages_cs.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/ErrorMessages_de.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/ErrorMessages_es.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/ErrorMessages_fr.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/ErrorMessages_it.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/ErrorMessages_ja.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/ErrorMessages_ko.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/ErrorMessages_pt_BR.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/ErrorMessages_sk.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/ErrorMessages_sv.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/ErrorMessages_zh_CN.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/ErrorMessages_zh_TW.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/Hashtable.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/MessageHandler.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/Node.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/ObjectFactory.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/Operators.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/Parameter.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/SecuritySupport.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/SecuritySupport12.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/StringValueHandler.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/output/OutputBuffer.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/output/StringOutputBuffer.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/output/TransletOutputHandlerFactory.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/output/WriterOutputBuffer.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/trax/DOM2SAX.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/trax/DOM2TO.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/trax/ObjectFactory.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/trax/OutputSettings.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/trax/SAX2DOM.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/trax/SAX2StAXBaseWriter.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/trax/SAX2StAXEventWriter.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/trax/SAX2StAXStreamWriter.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/trax/SecuritySupport.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/trax/SecuritySupport12.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/trax/SmartTransformerFactoryImpl.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/trax/StAXEvent2SAX.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/trax/StAXStream2SAX.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/trax/TemplatesHandlerImpl.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/trax/TemplatesImpl.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/trax/TrAXFilter.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/trax/TransformerFactoryImpl.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/trax/TransformerHandlerImpl.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/trax/TransformerImpl.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/trax/Util.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/trax/XSLTCSource.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/util/IntegerArray.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/AttrImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/AttrNSImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/AttributeMap.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/CDATASectionImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/CharacterDataImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/ChildNode.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/CommentImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/CoreDOMImplementationImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/CoreDocumentImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/DOMConfigurationImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/DOMErrorImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/DOMImplementationImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/DOMImplementationListImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/DOMImplementationSourceImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/DOMInputImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/DOMLocatorImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/DOMMessageFormatter.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/DOMNormalizer.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/DOMOutputImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/DOMStringListImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/DOMXSImplementationSourceImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/DeepNodeListImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/DeferredAttrImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/DeferredAttrNSImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/DeferredCDATASectionImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/DeferredCommentImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/DeferredDOMImplementationImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/DeferredDocumentImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/DeferredDocumentTypeImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/DeferredElementDefinitionImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/DeferredElementImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/DeferredElementNSImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/DeferredEntityImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/DeferredEntityReferenceImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/DeferredNode.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/DeferredNotationImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/DeferredProcessingInstructionImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/DeferredTextImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/DocumentFragmentImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/DocumentImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/DocumentTypeImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/ElementDefinitionImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/ElementImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/ElementNSImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/EntityImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/EntityReferenceImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/LCount.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/NamedNodeMapImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/NodeImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/NodeIteratorImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/NodeListCache.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/NotationImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/ObjectFactory.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/PSVIAttrNSImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/PSVIDOMImplementationImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/PSVIDocumentImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/PSVIElementNSImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/ParentNode.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/ProcessingInstructionImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/RangeExceptionImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/RangeImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/SecuritySupport.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/TextImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/TreeWalkerImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/events/EventImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/events/MutationEventImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/org.apache.xerces.dom.DOMImplementationSourceImpl - src/share/classes/com/sun/org/apache/xerces/internal/dom/org.w3c.dom.DOMImplementationSourceList - src/share/classes/com/sun/org/apache/xerces/internal/impl/Constants.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/ExternalSubsetResolver.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/PropertyManager.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/RevalidationHandler.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/Version.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/XML11DTDScannerImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/XML11DocumentScannerImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/XML11EntityScanner.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/XML11NSDocumentScannerImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/XML11NamespaceBinder.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/XMLDTDScannerImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/XMLDocumentFragmentScannerImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/XMLDocumentScannerImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/XMLEntityDescription.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/XMLEntityHandler.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/XMLEntityManager.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/XMLEntityScanner.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/XMLErrorReporter.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/XMLNSDocumentScannerImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/XMLNamespaceBinder.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/XMLScanner.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/XMLStreamFilterImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/XMLStreamReaderImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/XMLVersionDetector.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/BalancedDTDGrammar.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/DTDGrammar.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/DTDGrammarBucket.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/XML11DTDProcessor.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/XML11DTDValidator.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/XML11NSDTDValidator.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/XMLAttributeDecl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/XMLContentSpec.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/XMLDTDDescription.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/XMLDTDLoader.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/XMLDTDProcessor.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/XMLDTDValidator.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/XMLDTDValidatorFilter.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/XMLElementDecl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/XMLEntityDecl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/XMLNSDTDValidator.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/XMLNotationDecl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/XMLSimpleType.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/models/CMAny.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/models/CMBinOp.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/models/CMLeaf.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/models/CMNode.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/models/CMStateSet.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/models/CMUniOp.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/models/ContentModelValidator.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/models/DFAContentModel.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/models/MixedContentModel.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/models/SimpleContentModel.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/DTDDVFactory.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/DVFactoryException.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/DatatypeException.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/DatatypeValidator.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/InvalidDatatypeFacetException.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/InvalidDatatypeValueException.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/ObjectFactory.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/SchemaDVFactory.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/SecuritySupport.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/ValidatedInfo.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/ValidationContext.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/XSFacets.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/XSSimpleType.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/dtd/DTDDVFactoryImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/dtd/ENTITYDatatypeValidator.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/dtd/IDDatatypeValidator.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/dtd/IDREFDatatypeValidator.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/dtd/ListDatatypeValidator.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/dtd/NMTOKENDatatypeValidator.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/dtd/NOTATIONDatatypeValidator.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/dtd/StringDatatypeValidator.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/dtd/XML11DTDDVFactoryImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/dtd/XML11IDDatatypeValidator.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/dtd/XML11IDREFDatatypeValidator.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/dtd/XML11NMTOKENDatatypeValidator.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/util/Base64.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/util/ByteListImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/util/HexBin.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/AbstractDateTimeDV.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/AnyAtomicDV.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/AnySimpleDV.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/AnyURIDV.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/Base64BinaryDV.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/BaseDVFactory.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/BaseSchemaDVFactory.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/BooleanDV.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/DateDV.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/DateTimeDV.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/DayDV.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/DayTimeDurationDV.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/DecimalDV.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/DoubleDV.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/DurationDV.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/EntityDV.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/ExtendedSchemaDVFactoryImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/FloatDV.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/FullDVFactory.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/HexBinaryDV.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/IDDV.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/IDREFDV.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/IntegerDV.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/ListDV.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/MonthDV.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/MonthDayDV.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/PrecisionDecimalDV.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/QNameDV.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/SchemaDVFactoryImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/SchemaDateTimeException.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/StringDV.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/TimeDV.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/TypeValidator.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/UnionDV.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/XSSimpleTypeDecl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/XSSimpleTypeDelegate.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/YearDV.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/YearMonthDV.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/YearMonthDurationDV.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/io/ASCIIReader.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/io/MalformedByteSequenceException.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/io/UCSReader.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/io/UTF8Reader.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/DOMMessages.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/DOMMessages_de.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/DOMMessages_es.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/DOMMessages_fr.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/DOMMessages_it.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/DOMMessages_ja.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/DOMMessages_ko.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/DOMMessages_pt_BR.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/DOMMessages_sv.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/DOMMessages_zh_CN.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/DOMMessages_zh_TW.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/DatatypeMessages.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/DatatypeMessages_de.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/DatatypeMessages_es.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/DatatypeMessages_fr.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/DatatypeMessages_it.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/DatatypeMessages_ja.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/DatatypeMessages_ko.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/DatatypeMessages_pt_BR.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/DatatypeMessages_sv.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/DatatypeMessages_zh_CN.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/DatatypeMessages_zh_TW.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/JAXPValidationMessages.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/JAXPValidationMessages_de.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/JAXPValidationMessages_es.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/JAXPValidationMessages_fr.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/JAXPValidationMessages_it.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/JAXPValidationMessages_ja.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/JAXPValidationMessages_ko.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/JAXPValidationMessages_pt_BR.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/JAXPValidationMessages_sv.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/JAXPValidationMessages_zh_CN.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/JAXPValidationMessages_zh_TW.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/SAXMessages.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/SAXMessages_de.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/SAXMessages_es.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/SAXMessages_fr.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/SAXMessages_it.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/SAXMessages_ja.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/SAXMessages_ko.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/SAXMessages_pt_BR.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/SAXMessages_sv.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/SAXMessages_zh_CN.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/SAXMessages_zh_TW.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XIncludeMessages.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XIncludeMessages_de.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XIncludeMessages_es.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XIncludeMessages_fr.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XIncludeMessages_it.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XIncludeMessages_ja.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XIncludeMessages_ko.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XIncludeMessages_pt_BR.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XIncludeMessages_sv.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XIncludeMessages_zh_CN.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XIncludeMessages_zh_TW.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessageFormatter.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessageFormatter_de.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessageFormatter_es.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessageFormatter_fr.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessageFormatter_it.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessageFormatter_ja.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessageFormatter_ko.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessageFormatter_pt_BR.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessageFormatter_sv.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessageFormatter_zh_CN.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessageFormatter_zh_TW.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_de.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_es.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_fr.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_it.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_ja.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_ko.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_pt_BR.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_sv.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_zh_CN.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_zh_TW.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLSchemaMessages.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLSchemaMessages_de.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLSchemaMessages_es.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLSchemaMessages_fr.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLSchemaMessages_it.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLSchemaMessages_ja.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLSchemaMessages_ko.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLSchemaMessages_pt_BR.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLSchemaMessages_sv.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLSchemaMessages_zh_CN.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLSchemaMessages_zh_TW.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLSerializerMessages.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLSerializerMessages_de.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLSerializerMessages_es.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLSerializerMessages_fr.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLSerializerMessages_it.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLSerializerMessages_ja.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLSerializerMessages_ko.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLSerializerMessages_pt_BR.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLSerializerMessages_sv.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLSerializerMessages_zh_CN.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLSerializerMessages_zh_TW.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XPointerMessages.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XPointerMessages_de.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XPointerMessages_es.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XPointerMessages_fr.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XPointerMessages_it.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XPointerMessages_ja.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XPointerMessages_ko.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XPointerMessages_pt_BR.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XPointerMessages_sv.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XPointerMessages_zh_CN.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XPointerMessages_zh_TW.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/validation/EntityState.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/validation/ValidationManager.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/validation/ValidationState.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xpath/XPath.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xpath/XPathException.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xpath/regex/BMPattern.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xpath/regex/CaseInsensitiveMap.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xpath/regex/Match.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xpath/regex/Op.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xpath/regex/ParseException.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xpath/regex/ParserForXMLSchema.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xpath/regex/REUtil.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xpath/regex/RangeToken.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xpath/regex/RegexParser.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xpath/regex/RegularExpression.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xpath/regex/Token.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xpath/regex/message.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/xpath/regex/message_fr.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/xpath/regex/message_ja.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/AttributePSVImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/ElementPSVImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/SchemaGrammar.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/SchemaNamespaceSupport.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/SchemaSymbols.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/SubstitutionGroupHandler.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/XMLSchemaException.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/XMLSchemaLoader.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/XMLSchemaValidator.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/XSAnnotationImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/XSAttributeDecl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/XSAttributeGroupDecl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/XSAttributeUseImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/XSComplexTypeDecl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/XSConstraints.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/XSDDescription.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/XSDeclarationPool.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/XSElementDecl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/XSGrammarBucket.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/XSGroupDecl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/XSImplementationImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/XSLoaderImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/XSMessageFormatter.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/XSModelGroupImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/XSModelImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/XSNotationDecl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/XSParticleDecl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/XSWildcardDecl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/identity/Field.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/identity/FieldActivator.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/identity/IdentityConstraint.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/identity/KeyRef.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/identity/Selector.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/identity/UniqueOrKey.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/identity/ValueStore.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/identity/XPathMatcher.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/models/CMBuilder.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/models/CMNodeFactory.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/models/XSAllCM.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/models/XSCMBinOp.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/models/XSCMLeaf.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/models/XSCMRepeatingLeaf.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/models/XSCMUniOp.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/models/XSCMValidator.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/models/XSDFACM.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/models/XSEmptyCM.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/opti/AttrImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/opti/DefaultDocument.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/opti/DefaultElement.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/opti/DefaultNode.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/opti/DefaultText.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/opti/DefaultXMLDocumentHandler.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/opti/ElementImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/opti/NamedNodeMapImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/opti/NodeImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/opti/SchemaDOM.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/opti/SchemaDOMImplementation.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/opti/SchemaDOMParser.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/opti/SchemaParsingConfig.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/opti/TextImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/traversers/SchemaContentHandler.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/traversers/StAXSchemaParser.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSAnnotationInfo.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSAttributeChecker.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSDAbstractIDConstraintTraverser.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSDAbstractParticleTraverser.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSDAbstractTraverser.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSDAttributeGroupTraverser.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSDAttributeTraverser.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSDComplexTypeTraverser.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSDElementTraverser.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSDGroupTraverser.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSDHandler.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSDKeyrefTraverser.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSDNotationTraverser.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSDSimpleTypeTraverser.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSDUniqueOrKeyTraverser.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSDWildcardTraverser.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSDocumentInfo.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/util/LSInputListImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/util/ObjectListImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/util/ShortListImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/util/SimpleLocator.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/util/StringListImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/util/XInt.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/util/XIntPool.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/util/XSGrammarPool.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/util/XSInputSource.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/util/XSNamedMap4Types.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/util/XSNamedMapImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/util/XSObjectListImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/DefaultValidationErrorHandler.java - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/DocumentBuilderFactoryImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/DocumentBuilderImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/JAXPConstants.java - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/JAXPValidatorComponent.java - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/SAXParserFactoryImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/SAXParserImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/SchemaValidatorConfiguration.java - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/TeeXMLDocumentFilterImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/UnparsedEntityHandler.java - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/datatype/DatatypeFactoryImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/datatype/DurationDayTimeImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/datatype/DurationImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/datatype/DurationYearMonthImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/datatype/XMLGregorianCalendarImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/datatype/javax.xml.datatype.DatatypeFactory - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/javax.xml.parsers.DocumentBuilderFactory - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/javax.xml.parsers.SAXParserFactory - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/validation/AbstractXMLSchema.java - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/validation/DOMDocumentHandler.java - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/validation/DOMResultAugmentor.java - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/validation/DOMResultBuilder.java - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/validation/DOMValidatorHelper.java - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/validation/DraconianErrorHandler.java - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/validation/EmptyXMLSchema.java - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/validation/ErrorHandlerAdaptor.java - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/validation/JAXPValidationMessageFormatter.java - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/validation/ReadOnlyGrammarPool.java - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/validation/SimpleXMLSchema.java - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/validation/SoftReferenceGrammarPool.java - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/validation/StAXValidatorHelper.java - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/validation/StreamValidatorHelper.java - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/validation/Util.java - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/validation/ValidatorHandlerImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/validation/ValidatorHelper.java - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/validation/ValidatorImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/validation/WeakReferenceXMLSchema.java - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/validation/WrappedSAXException.java - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/validation/XMLSchema.java - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/validation/XMLSchemaFactory.java - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/validation/XMLSchemaValidatorComponentManager.java - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/validation/XSGrammarPoolContainer.java - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/validation/javax.xml.validation.SchemaFactory - src/share/classes/com/sun/org/apache/xerces/internal/parsers/AbstractDOMParser.java - src/share/classes/com/sun/org/apache/xerces/internal/parsers/AbstractSAXParser.java - src/share/classes/com/sun/org/apache/xerces/internal/parsers/AbstractXMLDocumentParser.java - src/share/classes/com/sun/org/apache/xerces/internal/parsers/BasicParserConfiguration.java - src/share/classes/com/sun/org/apache/xerces/internal/parsers/CachingParserPool.java - src/share/classes/com/sun/org/apache/xerces/internal/parsers/DOMParser.java - src/share/classes/com/sun/org/apache/xerces/internal/parsers/DOMParserImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/parsers/DTDConfiguration.java - src/share/classes/com/sun/org/apache/xerces/internal/parsers/DTDParser.java - src/share/classes/com/sun/org/apache/xerces/internal/parsers/IntegratedParserConfiguration.java - src/share/classes/com/sun/org/apache/xerces/internal/parsers/NonValidatingConfiguration.java - src/share/classes/com/sun/org/apache/xerces/internal/parsers/ObjectFactory.java - src/share/classes/com/sun/org/apache/xerces/internal/parsers/SAXParser.java - src/share/classes/com/sun/org/apache/xerces/internal/parsers/SecurityConfiguration.java - src/share/classes/com/sun/org/apache/xerces/internal/parsers/SecuritySupport.java - src/share/classes/com/sun/org/apache/xerces/internal/parsers/StandardParserConfiguration.java - src/share/classes/com/sun/org/apache/xerces/internal/parsers/XIncludeAwareParserConfiguration.java - src/share/classes/com/sun/org/apache/xerces/internal/parsers/XIncludeParserConfiguration.java - src/share/classes/com/sun/org/apache/xerces/internal/parsers/XML11Configurable.java - src/share/classes/com/sun/org/apache/xerces/internal/parsers/XML11Configuration.java - src/share/classes/com/sun/org/apache/xerces/internal/parsers/XML11DTDConfiguration.java - src/share/classes/com/sun/org/apache/xerces/internal/parsers/XML11NonValidatingConfiguration.java - src/share/classes/com/sun/org/apache/xerces/internal/parsers/XMLDocumentParser.java - src/share/classes/com/sun/org/apache/xerces/internal/parsers/XMLGrammarCachingConfiguration.java - src/share/classes/com/sun/org/apache/xerces/internal/parsers/XMLGrammarParser.java - src/share/classes/com/sun/org/apache/xerces/internal/parsers/XMLGrammarPreparser.java - src/share/classes/com/sun/org/apache/xerces/internal/parsers/XMLParser.java - src/share/classes/com/sun/org/apache/xerces/internal/parsers/XPointerParserConfiguration.java - src/share/classes/com/sun/org/apache/xerces/internal/parsers/org.apache.xerces.xni.parser.DTDConfiguration - src/share/classes/com/sun/org/apache/xerces/internal/parsers/org.apache.xerces.xni.parser.XML11Configuration - src/share/classes/com/sun/org/apache/xerces/internal/parsers/org.apache.xerces.xni.parser.XMLParserConfiguration - src/share/classes/com/sun/org/apache/xerces/internal/parsers/org.xml.sax.driver - src/share/classes/com/sun/org/apache/xerces/internal/util/AttributesProxy.java - src/share/classes/com/sun/org/apache/xerces/internal/util/AugmentationsImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/util/DOMEntityResolverWrapper.java - src/share/classes/com/sun/org/apache/xerces/internal/util/DOMErrorHandlerWrapper.java - src/share/classes/com/sun/org/apache/xerces/internal/util/DOMInputSource.java - src/share/classes/com/sun/org/apache/xerces/internal/util/DOMUtil.java - src/share/classes/com/sun/org/apache/xerces/internal/util/DatatypeMessageFormatter.java - src/share/classes/com/sun/org/apache/xerces/internal/util/DefaultErrorHandler.java - src/share/classes/com/sun/org/apache/xerces/internal/util/DraconianErrorHandler.java - src/share/classes/com/sun/org/apache/xerces/internal/util/EncodingMap.java - src/share/classes/com/sun/org/apache/xerces/internal/util/EntityResolver2Wrapper.java - src/share/classes/com/sun/org/apache/xerces/internal/util/EntityResolverWrapper.java - src/share/classes/com/sun/org/apache/xerces/internal/util/ErrorHandlerProxy.java - src/share/classes/com/sun/org/apache/xerces/internal/util/ErrorHandlerWrapper.java - src/share/classes/com/sun/org/apache/xerces/internal/util/FeatureState.java - src/share/classes/com/sun/org/apache/xerces/internal/util/HTTPInputSource.java - src/share/classes/com/sun/org/apache/xerces/internal/util/IntStack.java - src/share/classes/com/sun/org/apache/xerces/internal/util/JAXPNamespaceContextWrapper.java - src/share/classes/com/sun/org/apache/xerces/internal/util/LocatorProxy.java - src/share/classes/com/sun/org/apache/xerces/internal/util/LocatorWrapper.java - src/share/classes/com/sun/org/apache/xerces/internal/util/MessageFormatter.java - src/share/classes/com/sun/org/apache/xerces/internal/util/NamespaceContextWrapper.java - src/share/classes/com/sun/org/apache/xerces/internal/util/NamespaceSupport.java - src/share/classes/com/sun/org/apache/xerces/internal/util/ParserConfigurationSettings.java - src/share/classes/com/sun/org/apache/xerces/internal/util/PropertyState.java - src/share/classes/com/sun/org/apache/xerces/internal/util/SAX2XNI.java - src/share/classes/com/sun/org/apache/xerces/internal/util/SAXInputSource.java - src/share/classes/com/sun/org/apache/xerces/internal/util/SAXLocatorWrapper.java - src/share/classes/com/sun/org/apache/xerces/internal/util/SAXMessageFormatter.java - src/share/classes/com/sun/org/apache/xerces/internal/util/SecurityManager.java - src/share/classes/com/sun/org/apache/xerces/internal/util/ShadowedSymbolTable.java - src/share/classes/com/sun/org/apache/xerces/internal/util/StAXInputSource.java - src/share/classes/com/sun/org/apache/xerces/internal/util/StAXLocationWrapper.java - src/share/classes/com/sun/org/apache/xerces/internal/util/Status.java - src/share/classes/com/sun/org/apache/xerces/internal/util/SymbolHash.java - src/share/classes/com/sun/org/apache/xerces/internal/util/SymbolTable.java - src/share/classes/com/sun/org/apache/xerces/internal/util/SynchronizedSymbolTable.java - src/share/classes/com/sun/org/apache/xerces/internal/util/TeeXMLDocumentFilterImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/util/TypeInfoImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/util/URI.java - src/share/classes/com/sun/org/apache/xerces/internal/util/XML11Char.java - src/share/classes/com/sun/org/apache/xerces/internal/util/XMLAttributesImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/util/XMLAttributesIteratorImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/util/XMLCatalogResolver.java - src/share/classes/com/sun/org/apache/xerces/internal/util/XMLChar.java - src/share/classes/com/sun/org/apache/xerces/internal/util/XMLDocumentFilterImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/util/XMLEntityDescriptionImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/util/XMLErrorCode.java - src/share/classes/com/sun/org/apache/xerces/internal/util/XMLGrammarPoolImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/util/XMLInputSourceAdaptor.java - src/share/classes/com/sun/org/apache/xerces/internal/util/XMLResourceIdentifierImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/util/XMLStringBuffer.java - src/share/classes/com/sun/org/apache/xerces/internal/util/XMLSymbols.java - src/share/classes/com/sun/org/apache/xerces/internal/xinclude/MultipleScopeNamespaceSupport.java - src/share/classes/com/sun/org/apache/xerces/internal/xinclude/ObjectFactory.java - src/share/classes/com/sun/org/apache/xerces/internal/xinclude/SecuritySupport.java - src/share/classes/com/sun/org/apache/xerces/internal/xinclude/XInclude11TextReader.java - src/share/classes/com/sun/org/apache/xerces/internal/xinclude/XIncludeHandler.java - src/share/classes/com/sun/org/apache/xerces/internal/xinclude/XIncludeMessageFormatter.java - src/share/classes/com/sun/org/apache/xerces/internal/xinclude/XIncludeNamespaceSupport.java - src/share/classes/com/sun/org/apache/xerces/internal/xinclude/XIncludeTextReader.java - src/share/classes/com/sun/org/apache/xerces/internal/xinclude/XPointerElementHandler.java - src/share/classes/com/sun/org/apache/xerces/internal/xinclude/XPointerFramework.java - src/share/classes/com/sun/org/apache/xerces/internal/xinclude/XPointerSchema.java - src/share/classes/com/sun/org/apache/xerces/internal/xni/Augmentations.java - src/share/classes/com/sun/org/apache/xerces/internal/xni/NamespaceContext.java - src/share/classes/com/sun/org/apache/xerces/internal/xni/QName.java - src/share/classes/com/sun/org/apache/xerces/internal/xni/XMLAttributes.java - src/share/classes/com/sun/org/apache/xerces/internal/xni/XMLDTDContentModelHandler.java - src/share/classes/com/sun/org/apache/xerces/internal/xni/XMLDTDHandler.java - src/share/classes/com/sun/org/apache/xerces/internal/xni/XMLDocumentFragmentHandler.java - src/share/classes/com/sun/org/apache/xerces/internal/xni/XMLDocumentHandler.java - src/share/classes/com/sun/org/apache/xerces/internal/xni/XMLLocator.java - src/share/classes/com/sun/org/apache/xerces/internal/xni/XMLResourceIdentifier.java - src/share/classes/com/sun/org/apache/xerces/internal/xni/XMLString.java - src/share/classes/com/sun/org/apache/xerces/internal/xni/XNIException.java - src/share/classes/com/sun/org/apache/xerces/internal/xni/grammars/Grammar.java - src/share/classes/com/sun/org/apache/xerces/internal/xni/grammars/XMLDTDDescription.java - src/share/classes/com/sun/org/apache/xerces/internal/xni/grammars/XMLGrammarDescription.java - src/share/classes/com/sun/org/apache/xerces/internal/xni/grammars/XMLGrammarLoader.java - src/share/classes/com/sun/org/apache/xerces/internal/xni/grammars/XMLGrammarPool.java - src/share/classes/com/sun/org/apache/xerces/internal/xni/grammars/XMLSchemaDescription.java - src/share/classes/com/sun/org/apache/xerces/internal/xni/grammars/XSGrammar.java - src/share/classes/com/sun/org/apache/xerces/internal/xni/parser/XMLComponent.java - src/share/classes/com/sun/org/apache/xerces/internal/xni/parser/XMLComponentManager.java - src/share/classes/com/sun/org/apache/xerces/internal/xni/parser/XMLConfigurationException.java - src/share/classes/com/sun/org/apache/xerces/internal/xni/parser/XMLDTDContentModelFilter.java - src/share/classes/com/sun/org/apache/xerces/internal/xni/parser/XMLDTDContentModelSource.java - src/share/classes/com/sun/org/apache/xerces/internal/xni/parser/XMLDTDFilter.java - src/share/classes/com/sun/org/apache/xerces/internal/xni/parser/XMLDTDScanner.java - src/share/classes/com/sun/org/apache/xerces/internal/xni/parser/XMLDTDSource.java - src/share/classes/com/sun/org/apache/xerces/internal/xni/parser/XMLDocumentFilter.java - src/share/classes/com/sun/org/apache/xerces/internal/xni/parser/XMLDocumentScanner.java - src/share/classes/com/sun/org/apache/xerces/internal/xni/parser/XMLDocumentSource.java - src/share/classes/com/sun/org/apache/xerces/internal/xni/parser/XMLEntityResolver.java - src/share/classes/com/sun/org/apache/xerces/internal/xni/parser/XMLErrorHandler.java - src/share/classes/com/sun/org/apache/xerces/internal/xni/parser/XMLInputSource.java - src/share/classes/com/sun/org/apache/xerces/internal/xni/parser/XMLParseException.java - src/share/classes/com/sun/org/apache/xerces/internal/xni/parser/XMLParserConfiguration.java - src/share/classes/com/sun/org/apache/xerces/internal/xni/parser/XMLPullParserConfiguration.java - src/share/classes/com/sun/org/apache/xerces/internal/xpointer/ElementSchemePointer.java - src/share/classes/com/sun/org/apache/xerces/internal/xpointer/ShortHandPointer.java - src/share/classes/com/sun/org/apache/xerces/internal/xpointer/XPointerErrorHandler.java - src/share/classes/com/sun/org/apache/xerces/internal/xpointer/XPointerHandler.java - src/share/classes/com/sun/org/apache/xerces/internal/xpointer/XPointerMessageFormatter.java - src/share/classes/com/sun/org/apache/xerces/internal/xpointer/XPointerPart.java - src/share/classes/com/sun/org/apache/xerces/internal/xpointer/XPointerProcessor.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/AttributePSVI.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/ElementPSVI.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/ItemPSVI.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/LSInputList.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/PSVIProvider.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/ShortList.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/StringList.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/XSAnnotation.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/XSAttributeDeclaration.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/XSAttributeGroupDefinition.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/XSAttributeUse.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/XSComplexTypeDefinition.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/XSConstants.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/XSElementDeclaration.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/XSException.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/XSFacet.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/XSIDCDefinition.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/XSImplementation.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/XSLoader.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/XSModel.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/XSModelGroup.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/XSModelGroupDefinition.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/XSMultiValueFacet.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/XSNamedMap.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/XSNamespaceItem.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/XSNamespaceItemList.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/XSNotationDeclaration.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/XSObject.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/XSObjectList.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/XSParticle.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/XSSimpleTypeDefinition.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/XSTerm.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/XSTypeDefinition.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/XSWildcard.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/datatypes/ByteList.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/datatypes/ObjectList.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/datatypes/XSDateTime.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/datatypes/XSDecimal.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/datatypes/XSDouble.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/datatypes/XSFloat.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/datatypes/XSQName.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/datatypes/package.html - src/share/classes/com/sun/org/apache/xml/internal/dtm/Axis.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/DTM.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/DTMAxisIterator.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/DTMAxisTraverser.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/DTMConfigurationException.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/DTMDOMException.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/DTMException.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/DTMFilter.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/DTMIterator.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/DTMManager.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/DTMWSFilter.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/ObjectFactory.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/SecuritySupport.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/SecuritySupport12.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/ref/ChunkedIntArray.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/ref/CoroutineManager.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/ref/CoroutineParser.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/ref/CustomStringPool.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/ref/DTMAxisIterNodeList.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/ref/DTMAxisIteratorBase.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/ref/DTMChildIterNodeList.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/ref/DTMDefaultBase.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/ref/DTMDefaultBaseIterators.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/ref/DTMDefaultBaseTraversers.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/ref/DTMDocumentImpl.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/ref/DTMManagerDefault.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/ref/DTMNamedNodeMap.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/ref/DTMNodeIterator.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/ref/DTMNodeList.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/ref/DTMNodeListBase.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/ref/DTMNodeProxy.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/ref/DTMSafeStringPool.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/ref/DTMStringPool.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/ref/DTMTreeWalker.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/ref/EmptyIterator.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/ref/ExpandedNameTable.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/ref/ExtendedType.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/ref/IncrementalSAXSource.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/ref/IncrementalSAXSource_Filter.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/ref/IncrementalSAXSource_Xerces.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/ref/NodeLocator.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/ref/ObjectFactory.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/ref/SecuritySupport.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/ref/SecuritySupport12.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/ref/dom2dtm/DOM2DTM.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/ref/dom2dtm/DOM2DTMdefaultNamespaceDeclarationNode.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/ref/sax2dtm/SAX2DTM.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/ref/sax2dtm/SAX2DTM2.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/ref/sax2dtm/SAX2RTFDTM.java - src/share/classes/com/sun/org/apache/xml/internal/res/XMLErrorResources.java - src/share/classes/com/sun/org/apache/xml/internal/res/XMLErrorResources_ca.java - src/share/classes/com/sun/org/apache/xml/internal/res/XMLErrorResources_cs.java - src/share/classes/com/sun/org/apache/xml/internal/res/XMLErrorResources_de.java - src/share/classes/com/sun/org/apache/xml/internal/res/XMLErrorResources_en.java - src/share/classes/com/sun/org/apache/xml/internal/res/XMLErrorResources_es.java - src/share/classes/com/sun/org/apache/xml/internal/res/XMLErrorResources_fr.java - src/share/classes/com/sun/org/apache/xml/internal/res/XMLErrorResources_it.java - src/share/classes/com/sun/org/apache/xml/internal/res/XMLErrorResources_ja.java - src/share/classes/com/sun/org/apache/xml/internal/res/XMLErrorResources_ko.java - src/share/classes/com/sun/org/apache/xml/internal/res/XMLErrorResources_pt_BR.java - src/share/classes/com/sun/org/apache/xml/internal/res/XMLErrorResources_sk.java - src/share/classes/com/sun/org/apache/xml/internal/res/XMLErrorResources_sv.java - src/share/classes/com/sun/org/apache/xml/internal/res/XMLErrorResources_tr.java - src/share/classes/com/sun/org/apache/xml/internal/res/XMLErrorResources_zh_CN.java - src/share/classes/com/sun/org/apache/xml/internal/res/XMLErrorResources_zh_HK.java - src/share/classes/com/sun/org/apache/xml/internal/res/XMLErrorResources_zh_TW.java - src/share/classes/com/sun/org/apache/xml/internal/res/XMLMessages.java - src/share/classes/com/sun/org/apache/xml/internal/resolver/Catalog.java - src/share/classes/com/sun/org/apache/xml/internal/resolver/CatalogEntry.java - src/share/classes/com/sun/org/apache/xml/internal/resolver/CatalogException.java - src/share/classes/com/sun/org/apache/xml/internal/resolver/CatalogManager.java - src/share/classes/com/sun/org/apache/xml/internal/resolver/Resolver.java - src/share/classes/com/sun/org/apache/xml/internal/resolver/helpers/BootstrapResolver.java - src/share/classes/com/sun/org/apache/xml/internal/resolver/helpers/Debug.java - src/share/classes/com/sun/org/apache/xml/internal/resolver/helpers/FileURL.java - src/share/classes/com/sun/org/apache/xml/internal/resolver/helpers/Namespaces.java - src/share/classes/com/sun/org/apache/xml/internal/resolver/helpers/PublicId.java - src/share/classes/com/sun/org/apache/xml/internal/resolver/readers/CatalogReader.java - src/share/classes/com/sun/org/apache/xml/internal/resolver/readers/DOMCatalogParser.java - src/share/classes/com/sun/org/apache/xml/internal/resolver/readers/DOMCatalogReader.java - src/share/classes/com/sun/org/apache/xml/internal/resolver/readers/ExtendedXMLCatalogReader.java - src/share/classes/com/sun/org/apache/xml/internal/resolver/readers/OASISXMLCatalogReader.java - src/share/classes/com/sun/org/apache/xml/internal/resolver/readers/SAXCatalogParser.java - src/share/classes/com/sun/org/apache/xml/internal/resolver/readers/SAXCatalogReader.java - src/share/classes/com/sun/org/apache/xml/internal/resolver/readers/SAXParserHandler.java - src/share/classes/com/sun/org/apache/xml/internal/resolver/readers/TR9401CatalogReader.java - src/share/classes/com/sun/org/apache/xml/internal/resolver/readers/TextCatalogReader.java - src/share/classes/com/sun/org/apache/xml/internal/resolver/readers/XCatalogReader.java - src/share/classes/com/sun/org/apache/xml/internal/resolver/tools/CatalogResolver.java - src/share/classes/com/sun/org/apache/xml/internal/resolver/tools/ResolvingParser.java - src/share/classes/com/sun/org/apache/xml/internal/resolver/tools/ResolvingXMLFilter.java - src/share/classes/com/sun/org/apache/xml/internal/resolver/tools/ResolvingXMLReader.java - src/share/classes/com/sun/org/apache/xml/internal/serialize/BaseMarkupSerializer.java - src/share/classes/com/sun/org/apache/xml/internal/serialize/DOMSerializer.java - src/share/classes/com/sun/org/apache/xml/internal/serialize/DOMSerializerImpl.java - src/share/classes/com/sun/org/apache/xml/internal/serialize/ElementState.java - src/share/classes/com/sun/org/apache/xml/internal/serialize/EncodingInfo.java - src/share/classes/com/sun/org/apache/xml/internal/serialize/Encodings.java - src/share/classes/com/sun/org/apache/xml/internal/serialize/HTMLEntities.res - src/share/classes/com/sun/org/apache/xml/internal/serialize/HTMLSerializer.java - src/share/classes/com/sun/org/apache/xml/internal/serialize/HTMLdtd.java - src/share/classes/com/sun/org/apache/xml/internal/serialize/IndentPrinter.java - src/share/classes/com/sun/org/apache/xml/internal/serialize/LineSeparator.java - src/share/classes/com/sun/org/apache/xml/internal/serialize/Method.java - src/share/classes/com/sun/org/apache/xml/internal/serialize/ObjectFactory.java - src/share/classes/com/sun/org/apache/xml/internal/serialize/OutputFormat.java - src/share/classes/com/sun/org/apache/xml/internal/serialize/Printer.java - src/share/classes/com/sun/org/apache/xml/internal/serialize/SecuritySupport.java - src/share/classes/com/sun/org/apache/xml/internal/serialize/Serializer.java - src/share/classes/com/sun/org/apache/xml/internal/serialize/SerializerFactory.java - src/share/classes/com/sun/org/apache/xml/internal/serialize/SerializerFactoryImpl.java - src/share/classes/com/sun/org/apache/xml/internal/serialize/TextSerializer.java - src/share/classes/com/sun/org/apache/xml/internal/serialize/XHTMLSerializer.java - src/share/classes/com/sun/org/apache/xml/internal/serialize/XML11Serializer.java - src/share/classes/com/sun/org/apache/xml/internal/serialize/XMLSerializer.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/AttributesImplSerializer.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/CharInfo.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/DOMSerializer.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/ElemContext.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/ElemDesc.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/EmptySerializer.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/EncodingInfo.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/Encodings.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/Encodings.properties - src/share/classes/com/sun/org/apache/xml/internal/serializer/ExtendedContentHandler.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/ExtendedLexicalHandler.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/HTMLEntities.properties - src/share/classes/com/sun/org/apache/xml/internal/serializer/Method.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/NamespaceMappings.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/ObjectFactory.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/OutputPropertiesFactory.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/OutputPropertyUtils.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/SecuritySupport.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/SecuritySupport12.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/SerializationHandler.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/Serializer.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/SerializerBase.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/SerializerConstants.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/SerializerFactory.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/SerializerTrace.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/SerializerTraceWriter.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/ToHTMLSAXHandler.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/ToHTMLStream.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/ToSAXHandler.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/ToStream.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/ToTextSAXHandler.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/ToTextStream.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/ToUnknownStream.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/ToXMLSAXHandler.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/ToXMLStream.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/TransformStateSetter.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/TreeWalker.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/Utils.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/Version.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/WriterChain.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/WriterToASCI.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/WriterToUTF8Buffered.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/XMLEntities.properties - src/share/classes/com/sun/org/apache/xml/internal/serializer/XSLOutputAttributes.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/output_html.properties - src/share/classes/com/sun/org/apache/xml/internal/serializer/output_text.properties - src/share/classes/com/sun/org/apache/xml/internal/serializer/output_unknown.properties - src/share/classes/com/sun/org/apache/xml/internal/serializer/output_xml.properties - src/share/classes/com/sun/org/apache/xml/internal/serializer/package.html - src/share/classes/com/sun/org/apache/xml/internal/serializer/utils/AttList.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/utils/BoolStack.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/utils/DOM2Helper.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/utils/Messages.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/utils/MsgKey.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/utils/SerializerMessages.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/utils/SerializerMessages_ca.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/utils/SerializerMessages_cs.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/utils/SerializerMessages_de.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/utils/SerializerMessages_en.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/utils/SerializerMessages_es.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/utils/SerializerMessages_fr.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/utils/SerializerMessages_it.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/utils/SerializerMessages_ja.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/utils/SerializerMessages_ko.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/utils/SerializerMessages_sv.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/utils/SerializerMessages_zh_CN.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/utils/SerializerMessages_zh_TW.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/utils/StringToIntTable.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/utils/SystemIDResolver.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/utils/URI.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/utils/Utils.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/utils/WrappedRuntimeException.java - src/share/classes/com/sun/org/apache/xml/internal/utils/AttList.java - src/share/classes/com/sun/org/apache/xml/internal/utils/BoolStack.java - src/share/classes/com/sun/org/apache/xml/internal/utils/CharKey.java - src/share/classes/com/sun/org/apache/xml/internal/utils/Constants.java - src/share/classes/com/sun/org/apache/xml/internal/utils/DOM2Helper.java - src/share/classes/com/sun/org/apache/xml/internal/utils/DOMBuilder.java - src/share/classes/com/sun/org/apache/xml/internal/utils/DOMHelper.java - src/share/classes/com/sun/org/apache/xml/internal/utils/DOMOrder.java - src/share/classes/com/sun/org/apache/xml/internal/utils/DefaultErrorHandler.java - src/share/classes/com/sun/org/apache/xml/internal/utils/ElemDesc.java - src/share/classes/com/sun/org/apache/xml/internal/utils/FastStringBuffer.java - src/share/classes/com/sun/org/apache/xml/internal/utils/Hashtree2Node.java - src/share/classes/com/sun/org/apache/xml/internal/utils/IntStack.java - src/share/classes/com/sun/org/apache/xml/internal/utils/IntVector.java - src/share/classes/com/sun/org/apache/xml/internal/utils/ListingErrorHandler.java - src/share/classes/com/sun/org/apache/xml/internal/utils/LocaleUtility.java - src/share/classes/com/sun/org/apache/xml/internal/utils/MutableAttrListImpl.java - src/share/classes/com/sun/org/apache/xml/internal/utils/NSInfo.java - src/share/classes/com/sun/org/apache/xml/internal/utils/NameSpace.java - src/share/classes/com/sun/org/apache/xml/internal/utils/NamespaceSupport2.java - src/share/classes/com/sun/org/apache/xml/internal/utils/NodeConsumer.java - src/share/classes/com/sun/org/apache/xml/internal/utils/NodeVector.java - src/share/classes/com/sun/org/apache/xml/internal/utils/ObjectFactory.java - src/share/classes/com/sun/org/apache/xml/internal/utils/ObjectPool.java - src/share/classes/com/sun/org/apache/xml/internal/utils/ObjectStack.java - src/share/classes/com/sun/org/apache/xml/internal/utils/ObjectVector.java - src/share/classes/com/sun/org/apache/xml/internal/utils/PrefixResolver.java - src/share/classes/com/sun/org/apache/xml/internal/utils/PrefixResolverDefault.java - src/share/classes/com/sun/org/apache/xml/internal/utils/QName.java - src/share/classes/com/sun/org/apache/xml/internal/utils/RawCharacterHandler.java - src/share/classes/com/sun/org/apache/xml/internal/utils/SAXSourceLocator.java - src/share/classes/com/sun/org/apache/xml/internal/utils/SecuritySupport.java - src/share/classes/com/sun/org/apache/xml/internal/utils/SecuritySupport12.java - src/share/classes/com/sun/org/apache/xml/internal/utils/SerializableLocatorImpl.java - src/share/classes/com/sun/org/apache/xml/internal/utils/StopParseException.java - src/share/classes/com/sun/org/apache/xml/internal/utils/StringBufferPool.java - src/share/classes/com/sun/org/apache/xml/internal/utils/StringComparable.java - src/share/classes/com/sun/org/apache/xml/internal/utils/StringToIntTable.java - src/share/classes/com/sun/org/apache/xml/internal/utils/StringToStringTable.java - src/share/classes/com/sun/org/apache/xml/internal/utils/StringToStringTableVector.java - src/share/classes/com/sun/org/apache/xml/internal/utils/StringVector.java - src/share/classes/com/sun/org/apache/xml/internal/utils/StylesheetPIHandler.java - src/share/classes/com/sun/org/apache/xml/internal/utils/SuballocatedByteVector.java - src/share/classes/com/sun/org/apache/xml/internal/utils/SuballocatedIntVector.java - src/share/classes/com/sun/org/apache/xml/internal/utils/SystemIDResolver.java - src/share/classes/com/sun/org/apache/xml/internal/utils/ThreadControllerWrapper.java - src/share/classes/com/sun/org/apache/xml/internal/utils/TreeWalker.java - src/share/classes/com/sun/org/apache/xml/internal/utils/Trie.java - src/share/classes/com/sun/org/apache/xml/internal/utils/URI.java - src/share/classes/com/sun/org/apache/xml/internal/utils/UnImplNode.java - src/share/classes/com/sun/org/apache/xml/internal/utils/WrappedRuntimeException.java - src/share/classes/com/sun/org/apache/xml/internal/utils/WrongParserException.java - src/share/classes/com/sun/org/apache/xml/internal/utils/XML11Char.java - src/share/classes/com/sun/org/apache/xml/internal/utils/XMLChar.java - src/share/classes/com/sun/org/apache/xml/internal/utils/XMLCharacterRecognizer.java - src/share/classes/com/sun/org/apache/xml/internal/utils/XMLReaderManager.java - src/share/classes/com/sun/org/apache/xml/internal/utils/XMLString.java - src/share/classes/com/sun/org/apache/xml/internal/utils/XMLStringDefault.java - src/share/classes/com/sun/org/apache/xml/internal/utils/XMLStringFactory.java - src/share/classes/com/sun/org/apache/xml/internal/utils/XMLStringFactoryDefault.java - src/share/classes/com/sun/org/apache/xml/internal/utils/package.html - src/share/classes/com/sun/org/apache/xml/internal/utils/res/CharArrayWrapper.java - src/share/classes/com/sun/org/apache/xml/internal/utils/res/IntArrayWrapper.java - src/share/classes/com/sun/org/apache/xml/internal/utils/res/LongArrayWrapper.java - src/share/classes/com/sun/org/apache/xml/internal/utils/res/StringArrayWrapper.java - src/share/classes/com/sun/org/apache/xml/internal/utils/res/XResourceBundle.java - src/share/classes/com/sun/org/apache/xml/internal/utils/res/XResourceBundleBase.java - src/share/classes/com/sun/org/apache/xml/internal/utils/res/XResources_de.java - src/share/classes/com/sun/org/apache/xml/internal/utils/res/XResources_en.java - src/share/classes/com/sun/org/apache/xml/internal/utils/res/XResources_es.java - src/share/classes/com/sun/org/apache/xml/internal/utils/res/XResources_fr.java - src/share/classes/com/sun/org/apache/xml/internal/utils/res/XResources_it.java - src/share/classes/com/sun/org/apache/xml/internal/utils/res/XResources_ja_JP_A.java - src/share/classes/com/sun/org/apache/xml/internal/utils/res/XResources_ja_JP_HA.java - src/share/classes/com/sun/org/apache/xml/internal/utils/res/XResources_ja_JP_HI.java - src/share/classes/com/sun/org/apache/xml/internal/utils/res/XResources_ja_JP_I.java - src/share/classes/com/sun/org/apache/xml/internal/utils/res/XResources_ko.java - src/share/classes/com/sun/org/apache/xml/internal/utils/res/XResources_sv.java - src/share/classes/com/sun/org/apache/xml/internal/utils/res/XResources_zh_CN.java - src/share/classes/com/sun/org/apache/xml/internal/utils/res/XResources_zh_TW.java - src/share/classes/com/sun/org/apache/xpath/internal/Arg.java - src/share/classes/com/sun/org/apache/xpath/internal/CachedXPathAPI.java - src/share/classes/com/sun/org/apache/xpath/internal/Expression.java - src/share/classes/com/sun/org/apache/xpath/internal/ExpressionNode.java - src/share/classes/com/sun/org/apache/xpath/internal/ExpressionOwner.java - src/share/classes/com/sun/org/apache/xpath/internal/ExtensionsProvider.java - src/share/classes/com/sun/org/apache/xpath/internal/FoundIndex.java - src/share/classes/com/sun/org/apache/xpath/internal/NodeSet.java - src/share/classes/com/sun/org/apache/xpath/internal/NodeSetDTM.java - src/share/classes/com/sun/org/apache/xpath/internal/SourceTree.java - src/share/classes/com/sun/org/apache/xpath/internal/SourceTreeManager.java - src/share/classes/com/sun/org/apache/xpath/internal/VariableStack.java - src/share/classes/com/sun/org/apache/xpath/internal/WhitespaceStrippingElementMatcher.java - src/share/classes/com/sun/org/apache/xpath/internal/XPath.java - src/share/classes/com/sun/org/apache/xpath/internal/XPathAPI.java - src/share/classes/com/sun/org/apache/xpath/internal/XPathContext.java - src/share/classes/com/sun/org/apache/xpath/internal/XPathException.java - src/share/classes/com/sun/org/apache/xpath/internal/XPathFactory.java - src/share/classes/com/sun/org/apache/xpath/internal/XPathProcessorException.java - src/share/classes/com/sun/org/apache/xpath/internal/XPathVisitable.java - src/share/classes/com/sun/org/apache/xpath/internal/XPathVisitor.java - src/share/classes/com/sun/org/apache/xpath/internal/axes/AttributeIterator.java - src/share/classes/com/sun/org/apache/xpath/internal/axes/AxesWalker.java - src/share/classes/com/sun/org/apache/xpath/internal/axes/BasicTestIterator.java - src/share/classes/com/sun/org/apache/xpath/internal/axes/ChildIterator.java - src/share/classes/com/sun/org/apache/xpath/internal/axes/ChildTestIterator.java - src/share/classes/com/sun/org/apache/xpath/internal/axes/ContextNodeList.java - src/share/classes/com/sun/org/apache/xpath/internal/axes/DescendantIterator.java - src/share/classes/com/sun/org/apache/xpath/internal/axes/FilterExprIterator.java - src/share/classes/com/sun/org/apache/xpath/internal/axes/FilterExprIteratorSimple.java - src/share/classes/com/sun/org/apache/xpath/internal/axes/FilterExprWalker.java - src/share/classes/com/sun/org/apache/xpath/internal/axes/HasPositionalPredChecker.java - src/share/classes/com/sun/org/apache/xpath/internal/axes/IteratorPool.java - src/share/classes/com/sun/org/apache/xpath/internal/axes/LocPathIterator.java - src/share/classes/com/sun/org/apache/xpath/internal/axes/MatchPatternIterator.java - src/share/classes/com/sun/org/apache/xpath/internal/axes/NodeSequence.java - src/share/classes/com/sun/org/apache/xpath/internal/axes/OneStepIterator.java - src/share/classes/com/sun/org/apache/xpath/internal/axes/OneStepIteratorForward.java - src/share/classes/com/sun/org/apache/xpath/internal/axes/PathComponent.java - src/share/classes/com/sun/org/apache/xpath/internal/axes/PredicatedNodeTest.java - src/share/classes/com/sun/org/apache/xpath/internal/axes/RTFIterator.java - src/share/classes/com/sun/org/apache/xpath/internal/axes/ReverseAxesWalker.java - src/share/classes/com/sun/org/apache/xpath/internal/axes/SelfIteratorNoPredicate.java - src/share/classes/com/sun/org/apache/xpath/internal/axes/SubContextList.java - src/share/classes/com/sun/org/apache/xpath/internal/axes/UnionChildIterator.java - src/share/classes/com/sun/org/apache/xpath/internal/axes/UnionPathIterator.java - src/share/classes/com/sun/org/apache/xpath/internal/axes/WalkerFactory.java - src/share/classes/com/sun/org/apache/xpath/internal/axes/WalkingIterator.java - src/share/classes/com/sun/org/apache/xpath/internal/axes/WalkingIteratorSorted.java - src/share/classes/com/sun/org/apache/xpath/internal/axes/package.html - src/share/classes/com/sun/org/apache/xpath/internal/compiler/Compiler.java - src/share/classes/com/sun/org/apache/xpath/internal/compiler/FuncLoader.java - src/share/classes/com/sun/org/apache/xpath/internal/compiler/FunctionTable.java - src/share/classes/com/sun/org/apache/xpath/internal/compiler/Keywords.java - src/share/classes/com/sun/org/apache/xpath/internal/compiler/Lexer.java - src/share/classes/com/sun/org/apache/xpath/internal/compiler/ObjectFactory.java - src/share/classes/com/sun/org/apache/xpath/internal/compiler/OpCodes.java - src/share/classes/com/sun/org/apache/xpath/internal/compiler/OpMap.java - src/share/classes/com/sun/org/apache/xpath/internal/compiler/OpMapVector.java - src/share/classes/com/sun/org/apache/xpath/internal/compiler/PsuedoNames.java - src/share/classes/com/sun/org/apache/xpath/internal/compiler/SecuritySupport.java - src/share/classes/com/sun/org/apache/xpath/internal/compiler/SecuritySupport12.java - src/share/classes/com/sun/org/apache/xpath/internal/compiler/XPathDumper.java - src/share/classes/com/sun/org/apache/xpath/internal/compiler/XPathParser.java - src/share/classes/com/sun/org/apache/xpath/internal/compiler/package.html - src/share/classes/com/sun/org/apache/xpath/internal/domapi/XPathEvaluatorImpl.java - src/share/classes/com/sun/org/apache/xpath/internal/domapi/XPathExpressionImpl.java - src/share/classes/com/sun/org/apache/xpath/internal/domapi/XPathNSResolverImpl.java - src/share/classes/com/sun/org/apache/xpath/internal/domapi/XPathNamespaceImpl.java - src/share/classes/com/sun/org/apache/xpath/internal/domapi/XPathResultImpl.java - src/share/classes/com/sun/org/apache/xpath/internal/domapi/XPathStylesheetDOM3Exception.java - src/share/classes/com/sun/org/apache/xpath/internal/domapi/package.html - src/share/classes/com/sun/org/apache/xpath/internal/functions/FuncBoolean.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/FuncCeiling.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/FuncConcat.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/FuncContains.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/FuncCount.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/FuncCurrent.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/FuncDoclocation.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/FuncExtElementAvailable.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/FuncExtFunction.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/FuncExtFunctionAvailable.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/FuncFalse.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/FuncFloor.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/FuncGenerateId.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/FuncId.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/FuncLang.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/FuncLast.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/FuncLocalPart.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/FuncNamespace.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/FuncNormalizeSpace.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/FuncNot.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/FuncNumber.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/FuncPosition.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/FuncQname.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/FuncRound.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/FuncStartsWith.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/FuncString.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/FuncStringLength.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/FuncSubstring.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/FuncSubstringAfter.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/FuncSubstringBefore.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/FuncSum.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/FuncSystemProperty.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/FuncTranslate.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/FuncTrue.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/FuncUnparsedEntityURI.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/Function.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/Function2Args.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/Function3Args.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/FunctionDef1Arg.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/FunctionMultiArgs.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/FunctionOneArg.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/ObjectFactory.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/SecuritySupport.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/SecuritySupport12.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/WrongNumberArgsException.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/package.html - src/share/classes/com/sun/org/apache/xpath/internal/jaxp/JAXPExtensionsProvider.java - src/share/classes/com/sun/org/apache/xpath/internal/jaxp/JAXPPrefixResolver.java - src/share/classes/com/sun/org/apache/xpath/internal/jaxp/JAXPVariableStack.java - src/share/classes/com/sun/org/apache/xpath/internal/jaxp/XPathExpressionImpl.java - src/share/classes/com/sun/org/apache/xpath/internal/jaxp/XPathFactoryImpl.java - src/share/classes/com/sun/org/apache/xpath/internal/jaxp/XPathImpl.java - src/share/classes/com/sun/org/apache/xpath/internal/objects/DTMXRTreeFrag.java - src/share/classes/com/sun/org/apache/xpath/internal/objects/XBoolean.java - src/share/classes/com/sun/org/apache/xpath/internal/objects/XBooleanStatic.java - src/share/classes/com/sun/org/apache/xpath/internal/objects/XMLStringFactoryImpl.java - src/share/classes/com/sun/org/apache/xpath/internal/objects/XNodeSet.java - src/share/classes/com/sun/org/apache/xpath/internal/objects/XNodeSetForDOM.java - src/share/classes/com/sun/org/apache/xpath/internal/objects/XNull.java - src/share/classes/com/sun/org/apache/xpath/internal/objects/XNumber.java - src/share/classes/com/sun/org/apache/xpath/internal/objects/XObject.java - src/share/classes/com/sun/org/apache/xpath/internal/objects/XObjectFactory.java - src/share/classes/com/sun/org/apache/xpath/internal/objects/XRTreeFrag.java - src/share/classes/com/sun/org/apache/xpath/internal/objects/XRTreeFragSelectWrapper.java - src/share/classes/com/sun/org/apache/xpath/internal/objects/XString.java - src/share/classes/com/sun/org/apache/xpath/internal/objects/XStringForChars.java - src/share/classes/com/sun/org/apache/xpath/internal/objects/XStringForFSB.java - src/share/classes/com/sun/org/apache/xpath/internal/objects/package.html - src/share/classes/com/sun/org/apache/xpath/internal/operations/And.java - src/share/classes/com/sun/org/apache/xpath/internal/operations/Bool.java - src/share/classes/com/sun/org/apache/xpath/internal/operations/Div.java - src/share/classes/com/sun/org/apache/xpath/internal/operations/Equals.java - src/share/classes/com/sun/org/apache/xpath/internal/operations/Gt.java - src/share/classes/com/sun/org/apache/xpath/internal/operations/Gte.java - src/share/classes/com/sun/org/apache/xpath/internal/operations/Lt.java - src/share/classes/com/sun/org/apache/xpath/internal/operations/Lte.java - src/share/classes/com/sun/org/apache/xpath/internal/operations/Minus.java - src/share/classes/com/sun/org/apache/xpath/internal/operations/Mod.java - src/share/classes/com/sun/org/apache/xpath/internal/operations/Mult.java - src/share/classes/com/sun/org/apache/xpath/internal/operations/Neg.java - src/share/classes/com/sun/org/apache/xpath/internal/operations/NotEquals.java - src/share/classes/com/sun/org/apache/xpath/internal/operations/Number.java - src/share/classes/com/sun/org/apache/xpath/internal/operations/Operation.java - src/share/classes/com/sun/org/apache/xpath/internal/operations/Or.java - src/share/classes/com/sun/org/apache/xpath/internal/operations/Plus.java - src/share/classes/com/sun/org/apache/xpath/internal/operations/Quo.java - src/share/classes/com/sun/org/apache/xpath/internal/operations/String.java - src/share/classes/com/sun/org/apache/xpath/internal/operations/UnaryOperation.java - src/share/classes/com/sun/org/apache/xpath/internal/operations/Variable.java - src/share/classes/com/sun/org/apache/xpath/internal/operations/VariableSafeAbsRef.java - src/share/classes/com/sun/org/apache/xpath/internal/operations/package.html - src/share/classes/com/sun/org/apache/xpath/internal/package.html - src/share/classes/com/sun/org/apache/xpath/internal/patterns/ContextMatchStepPattern.java - src/share/classes/com/sun/org/apache/xpath/internal/patterns/FunctionPattern.java - src/share/classes/com/sun/org/apache/xpath/internal/patterns/NodeTest.java - src/share/classes/com/sun/org/apache/xpath/internal/patterns/NodeTestFilter.java - src/share/classes/com/sun/org/apache/xpath/internal/patterns/StepPattern.java - src/share/classes/com/sun/org/apache/xpath/internal/patterns/UnionPattern.java - src/share/classes/com/sun/org/apache/xpath/internal/patterns/package.html - src/share/classes/com/sun/org/apache/xpath/internal/res/XPATHErrorResources.java - src/share/classes/com/sun/org/apache/xpath/internal/res/XPATHErrorResources_de.java - src/share/classes/com/sun/org/apache/xpath/internal/res/XPATHErrorResources_en.java - src/share/classes/com/sun/org/apache/xpath/internal/res/XPATHErrorResources_es.java - src/share/classes/com/sun/org/apache/xpath/internal/res/XPATHErrorResources_fr.java - src/share/classes/com/sun/org/apache/xpath/internal/res/XPATHErrorResources_it.java - src/share/classes/com/sun/org/apache/xpath/internal/res/XPATHErrorResources_ja.java - src/share/classes/com/sun/org/apache/xpath/internal/res/XPATHErrorResources_ko.java - src/share/classes/com/sun/org/apache/xpath/internal/res/XPATHErrorResources_pt_BR.java - src/share/classes/com/sun/org/apache/xpath/internal/res/XPATHErrorResources_sv.java - src/share/classes/com/sun/org/apache/xpath/internal/res/XPATHErrorResources_zh_CN.java - src/share/classes/com/sun/org/apache/xpath/internal/res/XPATHErrorResources_zh_TW.java - src/share/classes/com/sun/org/apache/xpath/internal/res/XPATHMessages.java - src/share/classes/com/sun/org/apache/xpath/internal/res/package.html - src/share/classes/com/sun/xml/internal/stream/Entity.java - src/share/classes/com/sun/xml/internal/stream/EventFilterSupport.java - src/share/classes/com/sun/xml/internal/stream/StaxEntityResolverWrapper.java - src/share/classes/com/sun/xml/internal/stream/StaxErrorReporter.java - src/share/classes/com/sun/xml/internal/stream/StaxXMLInputSource.java - src/share/classes/com/sun/xml/internal/stream/XMLBufferListener.java - src/share/classes/com/sun/xml/internal/stream/XMLEntityReader.java - src/share/classes/com/sun/xml/internal/stream/XMLEntityStorage.java - src/share/classes/com/sun/xml/internal/stream/XMLEventReaderImpl.java - src/share/classes/com/sun/xml/internal/stream/XMLInputFactoryImpl.java - src/share/classes/com/sun/xml/internal/stream/XMLOutputFactoryImpl.java - src/share/classes/com/sun/xml/internal/stream/dtd/DTDGrammarUtil.java - src/share/classes/com/sun/xml/internal/stream/dtd/nonvalidating/DTDGrammar.java - src/share/classes/com/sun/xml/internal/stream/dtd/nonvalidating/XMLAttributeDecl.java - src/share/classes/com/sun/xml/internal/stream/dtd/nonvalidating/XMLElementDecl.java - src/share/classes/com/sun/xml/internal/stream/dtd/nonvalidating/XMLNotationDecl.java - src/share/classes/com/sun/xml/internal/stream/dtd/nonvalidating/XMLSimpleType.java - src/share/classes/com/sun/xml/internal/stream/events/AttributeImpl.java - src/share/classes/com/sun/xml/internal/stream/events/CharacterEvent.java - src/share/classes/com/sun/xml/internal/stream/events/CommentEvent.java - src/share/classes/com/sun/xml/internal/stream/events/DTDEvent.java - src/share/classes/com/sun/xml/internal/stream/events/DummyEvent.java - src/share/classes/com/sun/xml/internal/stream/events/EndDocumentEvent.java - src/share/classes/com/sun/xml/internal/stream/events/EndElementEvent.java - src/share/classes/com/sun/xml/internal/stream/events/EntityDeclarationImpl.java - src/share/classes/com/sun/xml/internal/stream/events/EntityReferenceEvent.java - src/share/classes/com/sun/xml/internal/stream/events/LocationImpl.java - src/share/classes/com/sun/xml/internal/stream/events/NamedEvent.java - src/share/classes/com/sun/xml/internal/stream/events/NamespaceImpl.java - src/share/classes/com/sun/xml/internal/stream/events/NotationDeclarationImpl.java - src/share/classes/com/sun/xml/internal/stream/events/ProcessingInstructionEvent.java - src/share/classes/com/sun/xml/internal/stream/events/StartDocumentEvent.java - src/share/classes/com/sun/xml/internal/stream/events/StartElementEvent.java - src/share/classes/com/sun/xml/internal/stream/events/XMLEventAllocatorImpl.java - src/share/classes/com/sun/xml/internal/stream/events/XMLEventFactoryImpl.java - src/share/classes/com/sun/xml/internal/stream/javax.xml.stream.XMLEventFactory - src/share/classes/com/sun/xml/internal/stream/javax.xml.stream.XMLInputFactory - src/share/classes/com/sun/xml/internal/stream/javax.xml.stream.XMLOutputFactory - src/share/classes/com/sun/xml/internal/stream/util/BufferAllocator.java - src/share/classes/com/sun/xml/internal/stream/util/ReadOnlyIterator.java - src/share/classes/com/sun/xml/internal/stream/util/ThreadLocalBufferAllocator.java - src/share/classes/com/sun/xml/internal/stream/writers/UTF8OutputStreamWriter.java - src/share/classes/com/sun/xml/internal/stream/writers/WriterUtility.java - src/share/classes/com/sun/xml/internal/stream/writers/XMLDOMWriterImpl.java - src/share/classes/com/sun/xml/internal/stream/writers/XMLEventWriterImpl.java - src/share/classes/com/sun/xml/internal/stream/writers/XMLOutputSource.java - src/share/classes/com/sun/xml/internal/stream/writers/XMLStreamWriterImpl.java - src/share/classes/com/sun/xml/internal/stream/writers/XMLWriter.java - src/share/classes/javax/xml/XMLConstants.java - src/share/classes/javax/xml/datatype/DatatypeConfigurationException.java - src/share/classes/javax/xml/datatype/DatatypeConstants.java - src/share/classes/javax/xml/datatype/DatatypeFactory.java - src/share/classes/javax/xml/datatype/Duration.java - src/share/classes/javax/xml/datatype/FactoryFinder.java - src/share/classes/javax/xml/datatype/SecuritySupport.java - src/share/classes/javax/xml/datatype/XMLGregorianCalendar.java - src/share/classes/javax/xml/datatype/package.html - src/share/classes/javax/xml/namespace/NamespaceContext.java - src/share/classes/javax/xml/namespace/QName.java - src/share/classes/javax/xml/namespace/package.html - src/share/classes/javax/xml/parsers/DocumentBuilder.java - src/share/classes/javax/xml/parsers/DocumentBuilderFactory.java - src/share/classes/javax/xml/parsers/FactoryConfigurationError.java - src/share/classes/javax/xml/parsers/FactoryFinder.java - src/share/classes/javax/xml/parsers/ParserConfigurationException.java - src/share/classes/javax/xml/parsers/SAXParser.java - src/share/classes/javax/xml/parsers/SAXParserFactory.java - src/share/classes/javax/xml/parsers/SecuritySupport.java - src/share/classes/javax/xml/parsers/package.html - src/share/classes/javax/xml/stream/EventFilter.java - src/share/classes/javax/xml/stream/FactoryConfigurationError.java - src/share/classes/javax/xml/stream/FactoryFinder.java - src/share/classes/javax/xml/stream/Location.java - src/share/classes/javax/xml/stream/SecuritySupport.java - src/share/classes/javax/xml/stream/StreamFilter.java - src/share/classes/javax/xml/stream/XMLEventFactory.java - src/share/classes/javax/xml/stream/XMLEventReader.java - src/share/classes/javax/xml/stream/XMLEventWriter.java - src/share/classes/javax/xml/stream/XMLInputFactory.java - src/share/classes/javax/xml/stream/XMLOutputFactory.java - src/share/classes/javax/xml/stream/XMLReporter.java - src/share/classes/javax/xml/stream/XMLResolver.java - src/share/classes/javax/xml/stream/XMLStreamConstants.java - src/share/classes/javax/xml/stream/XMLStreamException.java - src/share/classes/javax/xml/stream/XMLStreamReader.java - src/share/classes/javax/xml/stream/XMLStreamWriter.java - src/share/classes/javax/xml/stream/events/Attribute.java - src/share/classes/javax/xml/stream/events/Characters.java - src/share/classes/javax/xml/stream/events/Comment.java - src/share/classes/javax/xml/stream/events/DTD.java - src/share/classes/javax/xml/stream/events/EndDocument.java - src/share/classes/javax/xml/stream/events/EndElement.java - src/share/classes/javax/xml/stream/events/EntityDeclaration.java - src/share/classes/javax/xml/stream/events/EntityReference.java - src/share/classes/javax/xml/stream/events/Namespace.java - src/share/classes/javax/xml/stream/events/NotationDeclaration.java - src/share/classes/javax/xml/stream/events/ProcessingInstruction.java - src/share/classes/javax/xml/stream/events/StartDocument.java - src/share/classes/javax/xml/stream/events/StartElement.java - src/share/classes/javax/xml/stream/events/XMLEvent.java - src/share/classes/javax/xml/stream/util/EventReaderDelegate.java - src/share/classes/javax/xml/stream/util/StreamReaderDelegate.java - src/share/classes/javax/xml/stream/util/XMLEventAllocator.java - src/share/classes/javax/xml/stream/util/XMLEventConsumer.java - src/share/classes/javax/xml/transform/ErrorListener.java - src/share/classes/javax/xml/transform/FactoryFinder.java - src/share/classes/javax/xml/transform/OutputKeys.java - src/share/classes/javax/xml/transform/Result.java - src/share/classes/javax/xml/transform/SecuritySupport.java - src/share/classes/javax/xml/transform/Source.java - src/share/classes/javax/xml/transform/SourceLocator.java - src/share/classes/javax/xml/transform/Templates.java - src/share/classes/javax/xml/transform/Transformer.java - src/share/classes/javax/xml/transform/TransformerConfigurationException.java - src/share/classes/javax/xml/transform/TransformerException.java - src/share/classes/javax/xml/transform/TransformerFactory.java - src/share/classes/javax/xml/transform/TransformerFactoryConfigurationError.java - src/share/classes/javax/xml/transform/URIResolver.java - src/share/classes/javax/xml/transform/dom/DOMLocator.java - src/share/classes/javax/xml/transform/dom/DOMResult.java - src/share/classes/javax/xml/transform/dom/DOMSource.java - src/share/classes/javax/xml/transform/dom/package.html - src/share/classes/javax/xml/transform/overview.html - src/share/classes/javax/xml/transform/package.html - src/share/classes/javax/xml/transform/sax/SAXResult.java - src/share/classes/javax/xml/transform/sax/SAXSource.java - src/share/classes/javax/xml/transform/sax/SAXTransformerFactory.java - src/share/classes/javax/xml/transform/sax/TemplatesHandler.java - src/share/classes/javax/xml/transform/sax/TransformerHandler.java - src/share/classes/javax/xml/transform/sax/package.html - src/share/classes/javax/xml/transform/stax/StAXResult.java - src/share/classes/javax/xml/transform/stax/StAXSource.java - src/share/classes/javax/xml/transform/stax/package.html - src/share/classes/javax/xml/transform/stream/StreamResult.java - src/share/classes/javax/xml/transform/stream/StreamSource.java - src/share/classes/javax/xml/transform/stream/package.html - src/share/classes/javax/xml/validation/Schema.java - src/share/classes/javax/xml/validation/SchemaFactory.java - src/share/classes/javax/xml/validation/SchemaFactoryFinder.java - src/share/classes/javax/xml/validation/SchemaFactoryLoader.java - src/share/classes/javax/xml/validation/SecuritySupport.java - src/share/classes/javax/xml/validation/TypeInfoProvider.java - src/share/classes/javax/xml/validation/Validator.java - src/share/classes/javax/xml/validation/ValidatorHandler.java - src/share/classes/javax/xml/validation/package.html - src/share/classes/javax/xml/xpath/SecuritySupport.java - src/share/classes/javax/xml/xpath/XPath.java - src/share/classes/javax/xml/xpath/XPathConstants.java - src/share/classes/javax/xml/xpath/XPathException.java - src/share/classes/javax/xml/xpath/XPathExpression.java - src/share/classes/javax/xml/xpath/XPathExpressionException.java - src/share/classes/javax/xml/xpath/XPathFactory.java - src/share/classes/javax/xml/xpath/XPathFactoryConfigurationException.java - src/share/classes/javax/xml/xpath/XPathFactoryFinder.java - src/share/classes/javax/xml/xpath/XPathFunction.java - src/share/classes/javax/xml/xpath/XPathFunctionException.java - src/share/classes/javax/xml/xpath/XPathFunctionResolver.java - src/share/classes/javax/xml/xpath/XPathVariableResolver.java - src/share/classes/javax/xml/xpath/package.html - src/share/classes/org/w3c/dom/Attr.java - src/share/classes/org/w3c/dom/CDATASection.java - src/share/classes/org/w3c/dom/CharacterData.java - src/share/classes/org/w3c/dom/Comment.java - src/share/classes/org/w3c/dom/DOMConfiguration.java - src/share/classes/org/w3c/dom/DOMError.java - src/share/classes/org/w3c/dom/DOMErrorHandler.java - src/share/classes/org/w3c/dom/DOMException.java - src/share/classes/org/w3c/dom/DOMImplementation.java - src/share/classes/org/w3c/dom/DOMImplementationList.java - src/share/classes/org/w3c/dom/DOMImplementationSource.java - src/share/classes/org/w3c/dom/DOMLocator.java - src/share/classes/org/w3c/dom/DOMStringList.java - src/share/classes/org/w3c/dom/Document.java - src/share/classes/org/w3c/dom/DocumentFragment.java - src/share/classes/org/w3c/dom/DocumentType.java - src/share/classes/org/w3c/dom/Element.java - src/share/classes/org/w3c/dom/Entity.java - src/share/classes/org/w3c/dom/EntityReference.java - src/share/classes/org/w3c/dom/NameList.java - src/share/classes/org/w3c/dom/NamedNodeMap.java - src/share/classes/org/w3c/dom/Node.java - src/share/classes/org/w3c/dom/NodeList.java - src/share/classes/org/w3c/dom/Notation.java - src/share/classes/org/w3c/dom/ProcessingInstruction.java - src/share/classes/org/w3c/dom/Text.java - src/share/classes/org/w3c/dom/TypeInfo.java - src/share/classes/org/w3c/dom/UserDataHandler.java - src/share/classes/org/w3c/dom/bootstrap/DOMImplementationRegistry.java - src/share/classes/org/w3c/dom/css/CSS2Properties.java - src/share/classes/org/w3c/dom/css/CSSCharsetRule.java - src/share/classes/org/w3c/dom/css/CSSFontFaceRule.java - src/share/classes/org/w3c/dom/css/CSSImportRule.java - src/share/classes/org/w3c/dom/css/CSSMediaRule.java - src/share/classes/org/w3c/dom/css/CSSPageRule.java - src/share/classes/org/w3c/dom/css/CSSPrimitiveValue.java - src/share/classes/org/w3c/dom/css/CSSRule.java - src/share/classes/org/w3c/dom/css/CSSRuleList.java - src/share/classes/org/w3c/dom/css/CSSStyleDeclaration.java - src/share/classes/org/w3c/dom/css/CSSStyleRule.java - src/share/classes/org/w3c/dom/css/CSSStyleSheet.java - src/share/classes/org/w3c/dom/css/CSSUnknownRule.java - src/share/classes/org/w3c/dom/css/CSSValue.java - src/share/classes/org/w3c/dom/css/CSSValueList.java - src/share/classes/org/w3c/dom/css/Counter.java - src/share/classes/org/w3c/dom/css/DOMImplementationCSS.java - src/share/classes/org/w3c/dom/css/DocumentCSS.java - src/share/classes/org/w3c/dom/css/ElementCSSInlineStyle.java - src/share/classes/org/w3c/dom/css/RGBColor.java - src/share/classes/org/w3c/dom/css/Rect.java - src/share/classes/org/w3c/dom/css/ViewCSS.java - src/share/classes/org/w3c/dom/events/DocumentEvent.java - src/share/classes/org/w3c/dom/events/Event.java - src/share/classes/org/w3c/dom/events/EventException.java - src/share/classes/org/w3c/dom/events/EventListener.java - src/share/classes/org/w3c/dom/events/EventTarget.java - src/share/classes/org/w3c/dom/events/MouseEvent.java - src/share/classes/org/w3c/dom/events/MutationEvent.java - src/share/classes/org/w3c/dom/events/UIEvent.java - src/share/classes/org/w3c/dom/html/HTMLAnchorElement.java - src/share/classes/org/w3c/dom/html/HTMLAppletElement.java - src/share/classes/org/w3c/dom/html/HTMLAreaElement.java - src/share/classes/org/w3c/dom/html/HTMLBRElement.java - src/share/classes/org/w3c/dom/html/HTMLBaseElement.java - src/share/classes/org/w3c/dom/html/HTMLBaseFontElement.java - src/share/classes/org/w3c/dom/html/HTMLBodyElement.java - src/share/classes/org/w3c/dom/html/HTMLButtonElement.java - src/share/classes/org/w3c/dom/html/HTMLCollection.java - src/share/classes/org/w3c/dom/html/HTMLDListElement.java - src/share/classes/org/w3c/dom/html/HTMLDOMImplementation.java - src/share/classes/org/w3c/dom/html/HTMLDirectoryElement.java - src/share/classes/org/w3c/dom/html/HTMLDivElement.java - src/share/classes/org/w3c/dom/html/HTMLDocument.java - src/share/classes/org/w3c/dom/html/HTMLElement.java - src/share/classes/org/w3c/dom/html/HTMLFieldSetElement.java - src/share/classes/org/w3c/dom/html/HTMLFontElement.java - src/share/classes/org/w3c/dom/html/HTMLFormElement.java - src/share/classes/org/w3c/dom/html/HTMLFrameElement.java - src/share/classes/org/w3c/dom/html/HTMLFrameSetElement.java - src/share/classes/org/w3c/dom/html/HTMLHRElement.java - src/share/classes/org/w3c/dom/html/HTMLHeadElement.java - src/share/classes/org/w3c/dom/html/HTMLHeadingElement.java - src/share/classes/org/w3c/dom/html/HTMLHtmlElement.java - src/share/classes/org/w3c/dom/html/HTMLIFrameElement.java - src/share/classes/org/w3c/dom/html/HTMLImageElement.java - src/share/classes/org/w3c/dom/html/HTMLInputElement.java - src/share/classes/org/w3c/dom/html/HTMLIsIndexElement.java - src/share/classes/org/w3c/dom/html/HTMLLIElement.java - src/share/classes/org/w3c/dom/html/HTMLLabelElement.java - src/share/classes/org/w3c/dom/html/HTMLLegendElement.java - src/share/classes/org/w3c/dom/html/HTMLLinkElement.java - src/share/classes/org/w3c/dom/html/HTMLMapElement.java - src/share/classes/org/w3c/dom/html/HTMLMenuElement.java - src/share/classes/org/w3c/dom/html/HTMLMetaElement.java - src/share/classes/org/w3c/dom/html/HTMLModElement.java - src/share/classes/org/w3c/dom/html/HTMLOListElement.java - src/share/classes/org/w3c/dom/html/HTMLObjectElement.java - src/share/classes/org/w3c/dom/html/HTMLOptGroupElement.java - src/share/classes/org/w3c/dom/html/HTMLOptionElement.java - src/share/classes/org/w3c/dom/html/HTMLParagraphElement.java - src/share/classes/org/w3c/dom/html/HTMLParamElement.java - src/share/classes/org/w3c/dom/html/HTMLPreElement.java - src/share/classes/org/w3c/dom/html/HTMLQuoteElement.java - src/share/classes/org/w3c/dom/html/HTMLScriptElement.java - src/share/classes/org/w3c/dom/html/HTMLSelectElement.java - src/share/classes/org/w3c/dom/html/HTMLStyleElement.java - src/share/classes/org/w3c/dom/html/HTMLTableCaptionElement.java - src/share/classes/org/w3c/dom/html/HTMLTableCellElement.java - src/share/classes/org/w3c/dom/html/HTMLTableColElement.java - src/share/classes/org/w3c/dom/html/HTMLTableElement.java - src/share/classes/org/w3c/dom/html/HTMLTableRowElement.java - src/share/classes/org/w3c/dom/html/HTMLTableSectionElement.java - src/share/classes/org/w3c/dom/html/HTMLTextAreaElement.java - src/share/classes/org/w3c/dom/html/HTMLTitleElement.java - src/share/classes/org/w3c/dom/html/HTMLUListElement.java - src/share/classes/org/w3c/dom/ls/DOMImplementationLS.java - src/share/classes/org/w3c/dom/ls/LSException.java - src/share/classes/org/w3c/dom/ls/LSInput.java - src/share/classes/org/w3c/dom/ls/LSLoadEvent.java - src/share/classes/org/w3c/dom/ls/LSOutput.java - src/share/classes/org/w3c/dom/ls/LSParser.java - src/share/classes/org/w3c/dom/ls/LSParserFilter.java - src/share/classes/org/w3c/dom/ls/LSProgressEvent.java - src/share/classes/org/w3c/dom/ls/LSResourceResolver.java - src/share/classes/org/w3c/dom/ls/LSSerializer.java - src/share/classes/org/w3c/dom/ls/LSSerializerFilter.java - src/share/classes/org/w3c/dom/package.html - src/share/classes/org/w3c/dom/ranges/DocumentRange.java - src/share/classes/org/w3c/dom/ranges/Range.java - src/share/classes/org/w3c/dom/ranges/RangeException.java - src/share/classes/org/w3c/dom/ranges/package.html - src/share/classes/org/w3c/dom/stylesheets/DocumentStyle.java - src/share/classes/org/w3c/dom/stylesheets/LinkStyle.java - src/share/classes/org/w3c/dom/stylesheets/MediaList.java - src/share/classes/org/w3c/dom/stylesheets/StyleSheet.java - src/share/classes/org/w3c/dom/stylesheets/StyleSheetList.java - src/share/classes/org/w3c/dom/traversal/DocumentTraversal.java - src/share/classes/org/w3c/dom/traversal/NodeFilter.java - src/share/classes/org/w3c/dom/traversal/NodeIterator.java - src/share/classes/org/w3c/dom/traversal/TreeWalker.java - src/share/classes/org/w3c/dom/views/AbstractView.java - src/share/classes/org/w3c/dom/views/DocumentView.java - src/share/classes/org/w3c/dom/xpath/COPYRIGHT.html - src/share/classes/org/w3c/dom/xpath/XPathEvaluator.java - src/share/classes/org/w3c/dom/xpath/XPathException.java - src/share/classes/org/w3c/dom/xpath/XPathExpression.java - src/share/classes/org/w3c/dom/xpath/XPathNSResolver.java - src/share/classes/org/w3c/dom/xpath/XPathNamespace.java - src/share/classes/org/w3c/dom/xpath/XPathResult.java - src/share/classes/org/xml/sax/AttributeList.java - src/share/classes/org/xml/sax/Attributes.java - src/share/classes/org/xml/sax/COPYING - src/share/classes/org/xml/sax/COPYING.txt - src/share/classes/org/xml/sax/ContentHandler.java - src/share/classes/org/xml/sax/DTDHandler.java - src/share/classes/org/xml/sax/DocumentHandler.java - src/share/classes/org/xml/sax/EntityResolver.java - src/share/classes/org/xml/sax/ErrorHandler.java - src/share/classes/org/xml/sax/HandlerBase.java - src/share/classes/org/xml/sax/InputSource.java - src/share/classes/org/xml/sax/Locator.java - src/share/classes/org/xml/sax/Parser.java - src/share/classes/org/xml/sax/SAXException.java - src/share/classes/org/xml/sax/SAXNotRecognizedException.java - src/share/classes/org/xml/sax/SAXNotSupportedException.java - src/share/classes/org/xml/sax/SAXParseException.java - src/share/classes/org/xml/sax/XMLFilter.java - src/share/classes/org/xml/sax/XMLReader.java - src/share/classes/org/xml/sax/ext/Attributes2.java - src/share/classes/org/xml/sax/ext/Attributes2Impl.java - src/share/classes/org/xml/sax/ext/DeclHandler.java - src/share/classes/org/xml/sax/ext/DefaultHandler2.java - src/share/classes/org/xml/sax/ext/EntityResolver2.java - src/share/classes/org/xml/sax/ext/LexicalHandler.java - src/share/classes/org/xml/sax/ext/Locator2.java - src/share/classes/org/xml/sax/ext/Locator2Impl.java - src/share/classes/org/xml/sax/ext/package.html - src/share/classes/org/xml/sax/helpers/AttributeListImpl.java - src/share/classes/org/xml/sax/helpers/AttributesImpl.java - src/share/classes/org/xml/sax/helpers/DefaultHandler.java - src/share/classes/org/xml/sax/helpers/LocatorImpl.java - src/share/classes/org/xml/sax/helpers/NamespaceSupport.java - src/share/classes/org/xml/sax/helpers/NewInstance.java - src/share/classes/org/xml/sax/helpers/ParserAdapter.java - src/share/classes/org/xml/sax/helpers/ParserFactory.java - src/share/classes/org/xml/sax/helpers/XMLFilterImpl.java - src/share/classes/org/xml/sax/helpers/XMLReaderAdapter.java - src/share/classes/org/xml/sax/helpers/XMLReaderFactory.java - src/share/classes/org/xml/sax/helpers/package.html - src/share/classes/org/xml/sax/package.html From xueming.shen at oracle.com Thu Apr 12 17:39:43 2012 From: xueming.shen at oracle.com (xueming.shen at oracle.com) Date: Thu, 12 Apr 2012 17:39:43 +0000 Subject: hg: jdk8/tl/jdk: 7156873: (zipfs) FileSystems.newFileSystem(uri, env) fails for uri with escaped octets Message-ID: <20120412174008.294E247036@hg.openjdk.java.net> Changeset: 642c6d4aaaed Author: sherman Date: 2012-04-12 10:43 -0700 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/642c6d4aaaed 7156873: (zipfs) FileSystems.newFileSystem(uri, env) fails for uri with escaped octets Summary: To use URI.getRawSchemeSpecificPart() to get the scheme part of the uri Reviewed-by: alanb, chegar ! src/share/demo/nio/zipfs/src/com/sun/nio/zipfs/ZipFileSystemProvider.java + test/demo/zipfs/ZFSTests.java From xueming.shen at oracle.com Thu Apr 12 17:51:36 2012 From: xueming.shen at oracle.com (xueming.shen at oracle.com) Date: Thu, 12 Apr 2012 17:51:36 +0000 Subject: hg: jdk8/tl/jdk: 7152690: Initialization error with charset SJIS_0213 when security manager is enabled Message-ID: <20120412175146.C74F047037@hg.openjdk.java.net> Changeset: 587243bf0862 Author: sherman Date: 2012-04-12 10:55 -0700 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/587243bf0862 7152690: Initialization error with charset SJIS_0213 when security manager is enabled Summary: To use doPrivileged block to wrap the data reading code Reviewed-by: alanb ! src/share/classes/sun/nio/cs/ext/SJIS_0213.java + test/sun/nio/cs/TestSJIS0213_SM.java From xueming.shen at oracle.com Thu Apr 12 20:09:19 2012 From: xueming.shen at oracle.com (Xueming Shen) Date: Thu, 12 Apr 2012 13:09:19 -0700 Subject: Codereview request 7067045: replaceAll("\u20ac", "$"); causses java.lang.StringIndexOutOfBoundsExceptio Message-ID: <4F87366F.3050708@oracle.com> Hi Please help review the change for 7067045. The change is to throw a more meaningful IAE instead of the StringIndexoutputOfBoundsException if backslash or $ is the last character in the replacement string. (as the API indicated, the backslash and $ character in String's regex replacement and Matcher class have special meanings, backslash is for literal character escape and the $ is the capturing group reference, which needs a group index). http://cr.openjdk.java.net/~sherman/7067045/webrev/ Thanks, -Sherman From Lance.Andersen at oracle.com Thu Apr 12 20:21:08 2012 From: Lance.Andersen at oracle.com (Lance Andersen - Oracle) Date: Thu, 12 Apr 2012 16:21:08 -0400 Subject: Codereview request 7067045: replaceAll("\u20ac", "$"); causses java.lang.StringIndexOutOfBoundsExceptio In-Reply-To: <4F87366F.3050708@oracle.com> References: <4F87366F.3050708@oracle.com> Message-ID: <4F5FF43F-85CA-47D7-9CF6-F589900F2F78@oracle.com> Looks OK to me Best Lance On Apr 12, 2012, at 4:09 PM, Xueming Shen wrote: > Hi > > Please help review the change for 7067045. > > The change is to throw a more meaningful IAE instead of the StringIndexoutputOfBoundsException > if backslash or $ is the last character in the replacement string. (as the API indicated, the backslash > and $ character in String's regex replacement and Matcher class have special meanings, backslash > is for literal character escape and the $ is the capturing group reference, which needs a group index). > > http://cr.openjdk.java.net/~sherman/7067045/webrev/ > > Thanks, > -Sherman Lance Andersen| Principal Member of Technical Staff | +1.781.442.2037 Oracle Java Engineering 1 Network Drive Burlington, MA 01803 Lance.Andersen at oracle.com From xueming.shen at oracle.com Thu Apr 12 21:57:18 2012 From: xueming.shen at oracle.com (xueming.shen at oracle.com) Date: Thu, 12 Apr 2012 21:57:18 +0000 Subject: hg: jdk8/tl/jdk: 7067045: replaceAll("\u20ac", "$"); causses java.lang.StringIndexOutOfBoundsExceptio Message-ID: <20120412215738.220B44704B@hg.openjdk.java.net> Changeset: e65a1756d825 Author: sherman Date: 2012-04-12 15:01 -0700 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/e65a1756d825 7067045: replaceAll("\u20ac", "$"); causses java.lang.StringIndexOutOfBoundsExceptio Summary: Updated to throw IAE instead. Reviewed-by: lancea ! src/share/classes/java/util/regex/Matcher.java ! test/java/util/regex/RegExTest.java From huizhe.wang at oracle.com Thu Apr 12 22:25:03 2012 From: huizhe.wang at oracle.com (Joe Wang) Date: Thu, 12 Apr 2012 15:25:03 -0700 Subject: RFR [JDK8]: 7160380 Sync JDK8 with JAXP 1.4.5 Message-ID: <4F87563F.8090909@oracle.com> This is a follow-up update on Kelly's change that dropped the jaxp source drop bundle process. With this update, the jaxp source in JDK8 will be sync-ed with the current JAXP 1.4.5, and also JDK7u (the last change was 7151484). Going forward, we'll follow the process to put any changes into JDK8 before 7ux. webrev: http://cr.openjdk.java.net/~joehw/jdk8/7160380/webrev/ webrev for the change of package access: http://cr.openjdk.java.net/~joehw/jdk8/7160380/jdk/webrev/ Thanks, Joe From daniel.daugherty at oracle.com Thu Apr 12 23:30:54 2012 From: daniel.daugherty at oracle.com (daniel.daugherty at oracle.com) Date: Thu, 12 Apr 2012 23:30:54 +0000 Subject: hg: jdk8/tl/jdk: 7160895: tools/launcher/VersionCheck.java attempts to launch .debuginfo Message-ID: <20120412233104.B2F0247053@hg.openjdk.java.net> Changeset: 70d82f2a6c11 Author: dcubed Date: 2012-04-12 16:23 -0700 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/70d82f2a6c11 7160895: tools/launcher/VersionCheck.java attempts to launch .debuginfo Summary: Do not install .debuginfo files in bin dir. Reviewed-by: ksrini, sspitsyn ! make/common/Program.gmk From stuart.marks at oracle.com Fri Apr 13 01:24:17 2012 From: stuart.marks at oracle.com (Stuart Marks) Date: Thu, 12 Apr 2012 18:24:17 -0700 Subject: Code Review Request: 7157893: Warnings Cleanup in java.util.* In-Reply-To: <4F84BF06.4090802@oracle.com> References: <4F74FB13.3070407@oracle.com> <4F755D32.6080804@univ-mlv.fr> <4F7D44E8.1020408@oracle.com> <4F7D5407.1040808@univ-mlv.fr> <4F7E08FA.8010200@oracle.com> <4F7EC027.1040101@univ-mlv.fr> <4F7F8BB8.6070103@oracle.com> <4F84BF06.4090802@oracle.com> Message-ID: <4F878041.9050509@oracle.com> Thanks for the updates. They look fine to me. I think Mike Duigou was still looking at the changes; I'd suggest waiting for him to respond. s'marks On 4/10/12 4:15 PM, Kurchi Hazra wrote: > Hi Stuart, > > Please find the updated webrev here: > http://cr.openjdk.java.net/~khazra/7157893/webrev.01/ > > I hope to have included all the suggestions correctly. Also, note that I made > some new changes in Hashtable.java at lines 185, 355 and 910 to get rid of some > additional warnings. > > Thanks, > Kurchi > > > On 4/6/2012 5:35 PM, Stuart Marks wrote: >> Hi Kurchi, I think we've converged on the code changes. Please prepare and >> post another webrev for a final cross-check before pushing. >> >> What follows is I think merely residual disagreement over the philosophy of >> how to handle generic casts vs reification. :-) >> >> On 4/6/12 3:06 AM, R?mi Forax wrote: >>> On 04/05/2012 11:04 PM, Stuart Marks wrote: >>>> I'm somewhat skeptical of making code changes now based on potential future >>>> benefits when/if generics become reified. This was discussed before; see >>>> >>>> http://mail.openjdk.java.net/pipermail/jdk8-dev/2011-December/000454.html >>>> >>>> In that message, John Rose said "If the best practices have to change, then >>>> we'll have to change that code again. Or maybe the retrofit strategy will >>>> have to take account of the existing code idioms. In any case, we'll cross >>>> that bridge when we get to it. (Coping with reification in this case is a >>>> decision to make tomorrow, not today.)" >>> >>> I disagree with John. The main issue with generics nowadays is that >>> most of the people doesn't care about a cast to a type variable because >>> everybody knows about erasure. So codes are written with an implementation >>> glitch in mind. >>> Frankly, I don't know if reification will appear (yes it's a kind of magical) >>> or not >>> but I think it's a sloppy path to not consider all casts as equals. >> >> In order to program effectively with generics, I think you have to understand >> erasure and its implications. It may have been an unfortunate choice, but >> erasure is part of the language and we have to deal with it and in some cases >> rely on it. I don't think it's merely an "implementation glitch." >> >> The difficulty I have with reification is that while there are proposals >> floating around for how it could be done, nobody really knows how it will >> eventually turn out, nor whether it will actually be done. If it is >> eventually done, there will legal and illegal constructs, constructs that >> generate warnings, and perhaps a style guide for how to use reified generics >> properly. >> >> Right now, we can *imagine* what these future rules might be, but it seems >> untenable to me to try to make today's code conform to those imaginary future >> rules, especially in the absence of tools to help support those rules. >> >>> If unmaskNull return a V, the code of equals will upcast the value from Object >>> to V >>> to just after downcast it from V to Object, >>> I think it's better that unmask to return Object and upcast it to V when it's >>> necessary. >> >> Certainly there are cases where there's a redundant downcast and upcast. In a >> reified world, will this be a significant expense? Really, I have no idea. >> >> s'marks > From stuart.marks at oracle.com Fri Apr 13 01:33:52 2012 From: stuart.marks at oracle.com (Stuart Marks) Date: Thu, 12 Apr 2012 18:33:52 -0700 Subject: Generics & Reification Was Code Review Request: 7157893: Warnings Cleanup in java.util.* In-Reply-To: <4F856E1B.1000004@univ-mlv.fr> References: <4F74FB13.3070407@oracle.com> <4F755D32.6080804@univ-mlv.fr> <4F7D44E8.1020408@oracle.com> <4F7D5407.1040808@univ-mlv.fr> <4F7E08FA.8010200@oracle.com> <4F7EC027.1040101@univ-mlv.fr> <4F7F8BB8.6070103@oracle.com> <4F856E1B.1000004@univ-mlv.fr> Message-ID: <4F878280.3000307@oracle.com> On 4/11/12 4:42 AM, R?mi Forax wrote: > On 04/07/2012 02:35 AM, Stuart Marks wrote: >> In order to program effectively with generics, I think you have to understand >> erasure and its implications. It may have been an unfortunate choice, but >> erasure is part of the language and we have to deal with it and in some cases >> rely on it. I don't think it's merely an "implementation glitch." > > Erased casts are an implementation glitch, not the erasure by itself. > >> The difficulty I have with reification is that while there are proposals >> floating around for how it could be done, nobody really knows how it will >> eventually turn out, nor whether it will actually be done. If it is >> eventually done, there will legal and illegal constructs, constructs that >> generate warnings, and perhaps a style guide for how to use reified generics >> properly. >> >> Right now, we can *imagine* what these future rules might be, but it seems >> untenable to me to try to make today's code conform to those imaginary future >> rules, especially in the absence of tools to help support those rules. > > There are several implementations that exist, > here is the publicly available papers. > > M. Cimadamore and M. Viroli. > Reifying wildcards in Java using the EGO approach. > In SAC '07: Proceedings of the 2007 ACM symposium on > Applied computing, pages 1315{1322, New York, NY, USA, > 2007. ACM. > > M. Cimadamore and M. Viroli. > On Rei cation of Java Wildcards. > Science of Computer Programming, 2008 There's also Neal Gafter's blog post on the subject [1]. I haven't read these papers. Maybe I should just ask Maurizio about them. :-) I guess, is there enough commonality among all of these, and enough confidence that future-Java's generics reification will be similar to these, that today we should make coding style decisions based on future-Java? I can sort-of see it if there's a choice to be made in circumstances like the following. Suppose we need to choose between a code fragments A and B where they're more-or-less equivalent in an erased world but B is clearly better in some future-Java world. Sure, we could choose B, I don't see the harm in it. I'm just not convinced that we know enough about future-Java to make a strong case for B. s'marks [1] http://gafter.blogspot.com/2006/11/reified-generics-for-java.html From littlee at linux.vnet.ibm.com Fri Apr 13 02:21:12 2012 From: littlee at linux.vnet.ibm.com (Charles Lee) Date: Fri, 13 Apr 2012 10:21:12 +0800 Subject: New constructor in sun.tools.java.ClassPath builds a path using File.separator instead of File.pathSeparatorChar In-Reply-To: <4F8691C4.8050107@oracle.com> References: <4F82892C.7090709@linux.vnet.ibm.com> <4F82A5FC.7080601@oracle.com> <4F82ACCA.800@linux.vnet.ibm.com> <4F83EB5C.7040205@oracle.com> <4F853662.8020404@linux.vnet.ibm.com> <4F868066.8010602@linux.vnet.ibm.com> <4F868299.4000403@linux.vnet.ibm.com> <4F8691C4.8050107@oracle.com> Message-ID: <4F878D98.8010205@linux.vnet.ibm.com> On 04/12/2012 04:26 PM, Alan Bateman wrote: > On 12/04/2012 08:22, Deven You wrote: >> >> I have verified this commit. Thanks Alan and Charles! > The change-set that Charles pushed added test/sun/tools/classpath/ > RMICClassPathTest.java but I didn't see it in the original webrev. I > see now that your original mail had the proposed test in a separate > webrev but I missed that. Anyway, one comment is that test has been > added to an odd location that doesn't correspond to where the fix was > made. I think test/sun/rmi/rmic would have been a more suitable location. > > -Alan. Hi Alan, I am sorry for that. Should I commit a revert changeset? -- Yours Charles From daniel.lutoff at oracle.com Fri Apr 13 08:27:15 2012 From: daniel.lutoff at oracle.com (daniel lutoff) Date: Fri, 13 Apr 2012 10:27:15 +0200 Subject: strange java 7 behavior on windows ( star arg "*") Message-ID: <4F87E363.3080809@oracle.com> Hi all, I've notice a strange java 7 behavior on windows when a "*" is used as argument: Here is the test case, just printed out the args (pretty simple as you can see): public class TestStar { public static void main(String args[]) { for (String _arg : args) { System.out.print(_arg + " "); } System.out.println(); } } On Unix, running ' java TestStar "*" ', both on jdk6 and jdk7 produce the expected output: $ echo $JAVA_HOME $ ./jdk1.6.0_26/bin/java -version java version "1.6.0_26" Java(TM) SE Runtime Environment (build 1.6.0_26-b03) Java HotSpot(TM) Server VM (build 20.1-b02, mixed mode) $ ./jdk1.6.0_26/bin/java TestStar "*" * $ ./jdk1.7.0/bin/java -version java version "1.7.0" Java(TM) SE Runtime Environment (build 1.7.0-b147) Java HotSpot(TM) Server VM (build 21.0-b17, mixed mode) $ ./jdk1.7.0/bin/java TestStar "*" * $ On windows with jkd6, I've got the expected output: $ echo %JAVA_HOME% %JAVA_HOME% $ c:\Program Files\Java\jdk1.6.0_29\bin\java.exe -version 'c:\Program' is not recognized as an internal or external command, operable program or batch file. $ "c:\Program Files\Java\jdk1.6.0_29\bin\java.exe" -version java version "1.6.0_29" Java(TM) SE Runtime Environment (build 1.6.0_29-b11) Java HotSpot(TM) Client VM (build 20.4-b02, mixed mode, sharing) $ "c:\Program Files\Java\jdk1.6.0_29\bin\java.exe" TestStar "*" * $ On windows with jkd7, the output **IS NOT** the expected one. It seems that the "*" is interpreted and list the directory $ "c:\Program Files\Java\jdk1.7.0_03\bin\java.exe" -version java version "1.7.0_03" Java(TM) SE Runtime Environment (build 1.7.0_03-b05) Java HotSpot(TM) Client VM (build 22.1-b02, mixed mode, sharing) $ "c:\Program Files\Java\jdk1.7.0_03\bin\java.exe" TestStar "*" TestStar.class $ "c:\Program Files\Java\jdk1.7.0_03\bin\java.exe" TestStar "\*" \$Recycle.Bin \a.bat \autoexec.bat \bar.emf \config.sys \dell \Documents and Set tings \FWLog.txt \Genius \hiberfil.sys \HP_CLJ_CP4020_CP4520_32bit_PCL6_HPDIU \H PDIU.log \MSOCache \pagefile.sys \partage \PerfLogs \Program Files \ProgramData \Recovery \System Volume Information \Users \Windows \xampp Any info about this strange behavior? Is it a bug? Is there a workaround? Thanks Daniel From Alan.Bateman at oracle.com Fri Apr 13 08:45:19 2012 From: Alan.Bateman at oracle.com (Alan Bateman) Date: Fri, 13 Apr 2012 09:45:19 +0100 Subject: New constructor in sun.tools.java.ClassPath builds a path using File.separator instead of File.pathSeparatorChar In-Reply-To: <4F878D98.8010205@linux.vnet.ibm.com> References: <4F82892C.7090709@linux.vnet.ibm.com> <4F82A5FC.7080601@oracle.com> <4F82ACCA.800@linux.vnet.ibm.com> <4F83EB5C.7040205@oracle.com> <4F853662.8020404@linux.vnet.ibm.com> <4F868066.8010602@linux.vnet.ibm.com> <4F868299.4000403@linux.vnet.ibm.com> <4F8691C4.8050107@oracle.com> <4F878D98.8010205@linux.vnet.ibm.com> Message-ID: <4F87E79F.50504@oracle.com> On 13/04/2012 03:21, Charles Lee wrote: > On 04/12/2012 04:26 PM, Alan Bateman wrote: >> On 12/04/2012 08:22, Deven You wrote: >>> >>> I have verified this commit. Thanks Alan and Charles! >> The change-set that Charles pushed added test/sun/tools/classpath/ >> RMICClassPathTest.java but I didn't see it in the original webrev. I >> see now that your original mail had the proposed test in a separate >> webrev but I missed that. Anyway, one comment is that test has been >> added to an odd location that doesn't correspond to where the fix was >> made. I think test/sun/rmi/rmic would have been a more suitable location. >> >> -Alan. > Hi Alan, > > I am sorry for that. Should I commit a revert changeset? I would suggest just moving it (hg mv) to test/sun/rmi/rmic as it's a really test for sun.rmi.rmic.BatchEnvironment. I've created a bug that you can use: 7161282: Move test/sun/tools/classpath/RMICClassPathTest.java to a more appropriate location -Alan. From littlee at linux.vnet.ibm.com Fri Apr 13 09:14:28 2012 From: littlee at linux.vnet.ibm.com (Charles Lee) Date: Fri, 13 Apr 2012 17:14:28 +0800 Subject: New constructor in sun.tools.java.ClassPath builds a path using File.separator instead of File.pathSeparatorChar In-Reply-To: <4F87E79F.50504@oracle.com> References: <4F82892C.7090709@linux.vnet.ibm.com> <4F82A5FC.7080601@oracle.com> <4F82ACCA.800@linux.vnet.ibm.com> <4F83EB5C.7040205@oracle.com> <4F853662.8020404@linux.vnet.ibm.com> <4F868066.8010602@linux.vnet.ibm.com> <4F868299.4000403@linux.vnet.ibm.com> <4F8691C4.8050107@oracle.com> <4F878D98.8010205@linux.vnet.ibm.com> <4F87E79F.50504@oracle.com> Message-ID: <4F87EE74.5040904@linux.vnet.ibm.com> On 04/13/2012 04:45 PM, Alan Bateman wrote: > On 13/04/2012 03:21, Charles Lee wrote: >> On 04/12/2012 04:26 PM, Alan Bateman wrote: >>> On 12/04/2012 08:22, Deven You wrote: >>>> >>>> I have verified this commit. Thanks Alan and Charles! >>> The change-set that Charles pushed added test/sun/tools/classpath/ >>> RMICClassPathTest.java but I didn't see it in the original webrev. I >>> see now that your original mail had the proposed test in a separate >>> webrev but I missed that. Anyway, one comment is that test has been >>> added to an odd location that doesn't correspond to where the fix >>> was made. I think test/sun/rmi/rmic would have been a more suitable >>> location. >>> >>> -Alan. >> Hi Alan, >> >> I am sorry for that. Should I commit a revert changeset? > I would suggest just moving it (hg mv) to test/sun/rmi/rmic as it's a > really test for sun.rmi.rmic.BatchEnvironment. I've created a bug that > you can use: > > 7161282: Move test/sun/tools/classpath/RMICClassPathTest.java to a > more appropriate location > > -Alan. Hi Alan, The patch is @ http://cr.openjdk.java.net/~littlee/7161282/webrev.00/ Please help reviewing it :-) -- Yours Charles From Alan.Bateman at oracle.com Fri Apr 13 10:07:44 2012 From: Alan.Bateman at oracle.com (Alan Bateman) Date: Fri, 13 Apr 2012 11:07:44 +0100 Subject: Codereview request 7067045: replaceAll("\u20ac", "$"); causses java.lang.StringIndexOutOfBoundsExceptio In-Reply-To: <4F87366F.3050708@oracle.com> References: <4F87366F.3050708@oracle.com> Message-ID: <4F87FAF0.9030003@oracle.com> On 12/04/2012 21:09, Xueming Shen wrote: > Hi > > Please help review the change for 7067045. > > The change is to throw a more meaningful IAE instead of the > StringIndexoutputOfBoundsException > if backslash or $ is the last character in the replacement string. (as > the API indicated, the backslash > and $ character in String's regex replacement and Matcher class have > special meanings, backslash > is for literal character escape and the $ is the capturing group > reference, which needs a group index). > > http://cr.openjdk.java.net/~sherman/7067045/webrev/ > I see this has already been pushed but one comment on the issue is that it looks like the backslash case won't be exercised by the test because the $ case will throw the expected IAE first. -Alan From sean.mullan at oracle.com Fri Apr 13 14:35:42 2012 From: sean.mullan at oracle.com (sean.mullan at oracle.com) Date: Fri, 13 Apr 2012 14:35:42 +0000 Subject: hg: jdk8/tl/jdk: 2 new changesets Message-ID: <20120413143620.D1F39470A5@hg.openjdk.java.net> Changeset: fa26ac92b29e Author: mullan Date: 2012-04-13 09:46 -0400 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/fa26ac92b29e 7152564: Improve CodeSource.matchLocation(CodeSource) performance 7155693: CodeSource.matchLocation getPort test can be improved Reviewed-by: chegar ! src/share/classes/java/security/CodeSource.java ! test/java/security/CodeSource/Implies.java Changeset: edf10d16af25 Author: mullan Date: 2012-04-13 09:49 -0400 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/edf10d16af25 Merge From kumar.x.srinivasan at oracle.COM Fri Apr 13 15:14:28 2012 From: kumar.x.srinivasan at oracle.COM (Kumar Srinivasan) Date: Fri, 13 Apr 2012 08:14:28 -0700 Subject: strange java 7 behavior on windows ( star arg "*") In-Reply-To: <4F87E363.3080809@oracle.com> References: <4F87E363.3080809@oracle.com> Message-ID: <4F8842D4.7020704@oracle.COM> Hi Daniel, It is likely you are running into this issue: http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=7146424 Thanks Kumar > Hi all, > > I've notice a strange java 7 behavior on windows when a "*" is used as > argument: > > Here is the test case, just printed out the args (pretty simple as you > can see): > > public class TestStar > { > public static void main(String args[]) > { > for (String _arg : args) > { > System.out.print(_arg + " "); > } > System.out.println(); > } > } > > On Unix, running ' java TestStar "*" ', both on jdk6 and jdk7 produce > the expected output: > > $ echo $JAVA_HOME > > $ ./jdk1.6.0_26/bin/java -version > java version "1.6.0_26" > Java(TM) SE Runtime Environment (build 1.6.0_26-b03) > Java HotSpot(TM) Server VM (build 20.1-b02, mixed mode) > $ ./jdk1.6.0_26/bin/java TestStar "*" > * > $ ./jdk1.7.0/bin/java -version > java version "1.7.0" > Java(TM) SE Runtime Environment (build 1.7.0-b147) > Java HotSpot(TM) Server VM (build 21.0-b17, mixed mode) > $ ./jdk1.7.0/bin/java TestStar "*" > * > $ > > On windows with jkd6, I've got the expected output: > > $ echo %JAVA_HOME% > %JAVA_HOME% > > $ c:\Program Files\Java\jdk1.6.0_29\bin\java.exe -version > 'c:\Program' is not recognized as an internal or external command, > operable program or batch file. > > $ "c:\Program Files\Java\jdk1.6.0_29\bin\java.exe" -version > java version "1.6.0_29" > Java(TM) SE Runtime Environment (build 1.6.0_29-b11) > Java HotSpot(TM) Client VM (build 20.4-b02, mixed mode, sharing) > > $ "c:\Program Files\Java\jdk1.6.0_29\bin\java.exe" TestStar "*" > * > > $ > > > On windows with jkd7, the output **IS NOT** the expected one. It seems > that the "*" is interpreted and list the directory > > $ "c:\Program Files\Java\jdk1.7.0_03\bin\java.exe" -version > java version "1.7.0_03" > Java(TM) SE Runtime Environment (build 1.7.0_03-b05) > Java HotSpot(TM) Client VM (build 22.1-b02, mixed mode, sharing) > > $ "c:\Program Files\Java\jdk1.7.0_03\bin\java.exe" TestStar "*" > TestStar.class > > $ "c:\Program Files\Java\jdk1.7.0_03\bin\java.exe" TestStar "\*" > \$Recycle.Bin \a.bat \autoexec.bat \bar.emf \config.sys \dell > \Documents and Set > tings \FWLog.txt \Genius \hiberfil.sys > \HP_CLJ_CP4020_CP4520_32bit_PCL6_HPDIU \H > PDIU.log \MSOCache \pagefile.sys \partage \PerfLogs \Program Files > \ProgramData > \Recovery \System Volume Information \Users \Windows \xampp > > > Any info about this strange behavior? > Is it a bug? > Is there a workaround? > > Thanks > Daniel > > > From xueming.shen at oracle.com Fri Apr 13 15:20:46 2012 From: xueming.shen at oracle.com (Xueming Shen) Date: Fri, 13 Apr 2012 08:20:46 -0700 Subject: Codereview request 7067045: replaceAll("\u20ac", "$"); causses java.lang.StringIndexOutOfBoundsExceptio In-Reply-To: <4F87FAF0.9030003@oracle.com> References: <4F87366F.3050708@oracle.com> <4F87FAF0.9030003@oracle.com> Message-ID: <4F88444E.70401@oracle.com> Good catch. will fix it with next regex fix. Thanks! On 4/13/2012 3:07 AM, Alan Bateman wrote: > On 12/04/2012 21:09, Xueming Shen wrote: >> Hi >> >> Please help review the change for 7067045. >> >> The change is to throw a more meaningful IAE instead of the >> StringIndexoutputOfBoundsException >> if backslash or $ is the last character in the replacement string. >> (as the API indicated, the backslash >> and $ character in String's regex replacement and Matcher class have >> special meanings, backslash >> is for literal character escape and the $ is the capturing group >> reference, which needs a group index). >> >> http://cr.openjdk.java.net/~sherman/7067045/webrev/ >> > I see this has already been pushed but one comment on the issue is > that it looks like the backslash case won't be exercised by the test > because the $ case will throw the expected IAE first. > > -Alan From daniel.lutoff at oracle.com Fri Apr 13 15:29:49 2012 From: daniel.lutoff at oracle.com (daniel lutoff) Date: Fri, 13 Apr 2012 17:29:49 +0200 Subject: strange java 7 behavior on windows ( star arg "*") In-Reply-To: <4F8842D4.7020704@oracle.COM> References: <4F87E363.3080809@oracle.com> <4F8842D4.7020704@oracle.COM> Message-ID: <4F88466D.8080800@oracle.com> Thanks Kumar, Yes it seems very similar ! I'll try the workaround (instead of "*", use "*;") Thanks Daniel Le 13/04/12 17:14, Kumar Srinivasan a ?crit : > Hi Daniel, > > It is likely you are running into this issue: > http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=7146424 > > Thanks > Kumar > > > >> Hi all, >> >> I've notice a strange java 7 behavior on windows when a "*" is used >> as argument: >> >> Here is the test case, just printed out the args (pretty simple as >> you can see): >> >> public class TestStar >> { >> public static void main(String args[]) >> { >> for (String _arg : args) >> { >> System.out.print(_arg + " "); >> } >> System.out.println(); >> } >> } >> >> On Unix, running ' java TestStar "*" ', both on jdk6 and jdk7 >> produce the expected output: >> >> $ echo $JAVA_HOME >> >> $ ./jdk1.6.0_26/bin/java -version >> java version "1.6.0_26" >> Java(TM) SE Runtime Environment (build 1.6.0_26-b03) >> Java HotSpot(TM) Server VM (build 20.1-b02, mixed mode) >> $ ./jdk1.6.0_26/bin/java TestStar "*" >> * >> $ ./jdk1.7.0/bin/java -version >> java version "1.7.0" >> Java(TM) SE Runtime Environment (build 1.7.0-b147) >> Java HotSpot(TM) Server VM (build 21.0-b17, mixed mode) >> $ ./jdk1.7.0/bin/java TestStar "*" >> * >> $ >> >> On windows with jkd6, I've got the expected output: >> >> $ echo %JAVA_HOME% >> %JAVA_HOME% >> >> $ c:\Program Files\Java\jdk1.6.0_29\bin\java.exe -version >> 'c:\Program' is not recognized as an internal or external command, >> operable program or batch file. >> >> $ "c:\Program Files\Java\jdk1.6.0_29\bin\java.exe" -version >> java version "1.6.0_29" >> Java(TM) SE Runtime Environment (build 1.6.0_29-b11) >> Java HotSpot(TM) Client VM (build 20.4-b02, mixed mode, sharing) >> >> $ "c:\Program Files\Java\jdk1.6.0_29\bin\java.exe" TestStar "*" >> * >> >> $ >> >> >> On windows with jkd7, the output **IS NOT** the expected one. It >> seems that the "*" is interpreted and list the directory >> >> $ "c:\Program Files\Java\jdk1.7.0_03\bin\java.exe" -version >> java version "1.7.0_03" >> Java(TM) SE Runtime Environment (build 1.7.0_03-b05) >> Java HotSpot(TM) Client VM (build 22.1-b02, mixed mode, sharing) >> >> $ "c:\Program Files\Java\jdk1.7.0_03\bin\java.exe" TestStar "*" >> TestStar.class >> >> $ "c:\Program Files\Java\jdk1.7.0_03\bin\java.exe" TestStar "\*" >> \$Recycle.Bin \a.bat \autoexec.bat \bar.emf \config.sys \dell >> \Documents and Set >> tings \FWLog.txt \Genius \hiberfil.sys >> \HP_CLJ_CP4020_CP4520_32bit_PCL6_HPDIU \H >> PDIU.log \MSOCache \pagefile.sys \partage \PerfLogs \Program Files >> \ProgramData >> \Recovery \System Volume Information \Users \Windows \xampp >> >> >> Any info about this strange behavior? > >> Is it a bug? >> Is there a workaround? >> >> Thanks >> Daniel >> >> >> > From huizhe.wang at oracle.com Fri Apr 13 17:17:06 2012 From: huizhe.wang at oracle.com (Joe Wang) Date: Fri, 13 Apr 2012 10:17:06 -0700 Subject: [7u6] RFR : 7161105 : unused classes in jdk7u repository Message-ID: <4F885F92.5030204@oracle.com> In the patch for 7053556, the ObjectFactory/SecuritySupport classes that were duplicated in many packages were replaced by a unified set under xerces/internal/utils and xalan/internal/utils (Note that those under xpath/internal/utils were old). When the jaxp 1.4.5 source bundle was dropped however, it was a copy of the source bundle on top of the original source, therefore leaving these classes behind unremoved. This change request is to remove them (49 in total) from the repository. webrev: http://cr.openjdk.java.net/~joehw/7u6/7161105/webrev/ Thanks, Joe From vincent.x.ryan at oracle.com Fri Apr 13 18:00:50 2012 From: vincent.x.ryan at oracle.com (vincent.x.ryan at oracle.com) Date: Fri, 13 Apr 2012 18:00:50 +0000 Subject: hg: jdk8/tl/jdk: 7152169: TEST_BUG: sun/security/tools/jarsigner/ec.sh occasionally fail due to keytool error on sparc Message-ID: <20120413180114.D7F80470AA@hg.openjdk.java.net> Changeset: 7340f4a3c830 Author: vinnie Date: 2012-04-13 19:00 +0100 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/7340f4a3c830 7152169: TEST_BUG: sun/security/tools/jarsigner/ec.sh occasionally fail due to keytool error on sparc Reviewed-by: mullan ! src/share/classes/sun/security/ec/ECParameters.java From Lance.Andersen at oracle.com Fri Apr 13 21:08:37 2012 From: Lance.Andersen at oracle.com (Lance Andersen - Oracle) Date: Fri, 13 Apr 2012 17:08:37 -0400 Subject: [7u6] RFR : 7161105 : unused classes in jdk7u repository In-Reply-To: <4F885F92.5030204@oracle.com> References: <4F885F92.5030204@oracle.com> Message-ID: looks good joe, say goodbye to them :-) On Apr 13, 2012, at 1:17 PM, Joe Wang wrote: > In the patch for 7053556, the ObjectFactory/SecuritySupport classes that were duplicated in many packages were replaced by a unified set under xerces/internal/utils and xalan/internal/utils (Note that those under xpath/internal/utils were old). When the jaxp 1.4.5 source bundle was dropped however, it was a copy of the source bundle on top of the original source, therefore leaving these classes behind unremoved. This change request is to remove them (49 in total) from the repository. > > webrev: http://cr.openjdk.java.net/~joehw/7u6/7161105/webrev/ > > Thanks, > Joe Lance Andersen| Principal Member of Technical Staff | +1.781.442.2037 Oracle Java Engineering 1 Network Drive Burlington, MA 01803 Lance.Andersen at oracle.com From huizhe.wang at oracle.com Fri Apr 13 21:21:52 2012 From: huizhe.wang at oracle.com (Joe Wang) Date: Fri, 13 Apr 2012 14:21:52 -0700 Subject: [7u6] RFR : 7161105 : unused classes in jdk7u repository In-Reply-To: References: <4F885F92.5030204@oracle.com> Message-ID: <4F8898F0.9070401@oracle.com> I'd thank them for the services over the last 8 years :) On 4/13/2012 2:08 PM, Lance Andersen - Oracle wrote: > looks good joe, say goodbye to them :-) > > > On Apr 13, 2012, at 1:17 PM, Joe Wang wrote: > >> In the patch for 7053556, the ObjectFactory/SecuritySupport classes >> that were duplicated in many packages were replaced by a unified set >> under xerces/internal/utils and xalan/internal/utils (Note that those >> under xpath/internal/utils were old). When the jaxp 1.4.5 source >> bundle was dropped however, it was a copy of the source bundle on top >> of the original source, therefore leaving these classes behind >> unremoved. This change request is to remove them (49 in total) from >> the repository. >> >> webrev: http://cr.openjdk.java.net/~joehw/7u6/7161105/webrev/ >> >> >> Thanks, >> Joe > > > Lance > Andersen| Principal Member of Technical Staff | +1.781.442.2037 > Oracle Java Engineering > 1 Network Drive > Burlington, MA 01803 > Lance.Andersen at oracle.com > From darryl.mocek at oracle.com Fri Apr 13 23:45:35 2012 From: darryl.mocek at oracle.com (Darryl Mocek) Date: Fri, 13 Apr 2012 16:45:35 -0700 Subject: Code Review Request - Bug #6948101 & 7142596: RMI JPRT tests are failing Message-ID: <4F88BA9F.2000600@oracle.com> Hello core-libs. Please review this webrev to fix Bug #6948101 and #7142596. This commit fixes concurrency issues with the RMI tests. - Added TestLibrary.getUnusedRandomPort method. This attempts to return a random port number, which is unused, between the port ranges 1024 and 64000 (inclusive). It will try up to 10 times before giving up. - Changed almost all tests from using hard port numbers to using random port numbers for running the RMI Registry and RMID. - Removed othervm from those tests which don't need it. - Added parameters for tests which spawn a separate VM to pass RMI Registry and RMID ports in cases where needed. - Added PropertyPermission to security policy files where needed. - Removed java/rmi and sun/rmi from tests which cannot be run concurrently. - Removed java/rmi and sun/rmi from tests which must run in othervm mode. - Added java/rmi/Naming to list of tests which cannot be run concurrently. Webrev, can be found here: http://cr.openjdk.java.net/~dmocek/7142596/webrev.00 Thanks, Darryl From mike.duigou at oracle.com Sat Apr 14 03:26:06 2012 From: mike.duigou at oracle.com (Mike Duigou) Date: Fri, 13 Apr 2012 20:26:06 -0700 Subject: Code Review Request: 7157893: Warnings Cleanup in java.util.* In-Reply-To: <4F84BF06.4090802@oracle.com> References: <4F74FB13.3070407@oracle.com> <4F755D32.6080804@univ-mlv.fr> <4F7D44E8.1020408@oracle.com> <4F7D5407.1040808@univ-mlv.fr> <4F7E08FA.8010200@oracle.com> <4F7EC027.1040101@univ-mlv.fr> <4F7F8BB8.6070103@oracle.com> <4F84BF06.4090802@oracle.com> Message-ID: <632E281F-D130-4BFA-A2E8-BFD34EC8D5EB@oracle.com> Looks good for commit. Just a few notes - The inconsistent use of by WeakHashMap and by the other Hash Map classes for their tables is a bit annoying but not a new problem. We should either make all of the maps use (my preference) or all use . There were lots of cases of introduced and that are clearly correct (equals(), contains() etc.). I understand that doesn't really add anything the compiler or JVM can currently use but it would seem to make the source intent more obvious. ComparableTimSort.java: "UnnecessaryLocalVariable" is a non-standard warning annotation. I seem to recall that there was a previous discussion of how these would be handled. Just a reminder in-case some action needs to be taken on this. EnumMap.java: maskNull seemed to have the unchecked cast well bottlenecked. Why move the cast outside of unmaskNull() and thus require @SuppressWarnings("unchecked") in many other places. Mike On Apr 10 2012, at 16:15 , Kurchi Hazra wrote: > Hi Stuart, > > Please find the updated webrev here: http://cr.openjdk.java.net/~khazra/7157893/webrev.01/ > > I hope to have included all the suggestions correctly. Also, note that I made some new changes in Hashtable.java at lines 185, 355 and 910 to get rid of some additional warnings. > > Thanks, > Kurchi > > > On 4/6/2012 5:35 PM, Stuart Marks wrote: >> Hi Kurchi, I think we've converged on the code changes. Please prepare and post another webrev for a final cross-check before pushing. >> >> What follows is I think merely residual disagreement over the philosophy of how to handle generic casts vs reification. :-) >> >> On 4/6/12 3:06 AM, R?mi Forax wrote: >>> On 04/05/2012 11:04 PM, Stuart Marks wrote: >>>> I'm somewhat skeptical of making code changes now based on potential future >>>> benefits when/if generics become reified. This was discussed before; see >>>> >>>> http://mail.openjdk.java.net/pipermail/jdk8-dev/2011-December/000454.html >>>> >>>> In that message, John Rose said "If the best practices have to change, then >>>> we'll have to change that code again. Or maybe the retrofit strategy will >>>> have to take account of the existing code idioms. In any case, we'll cross >>>> that bridge when we get to it. (Coping with reification in this case is a >>>> decision to make tomorrow, not today.)" >>> >>> I disagree with John. The main issue with generics nowadays is that >>> most of the people doesn't care about a cast to a type variable because >>> everybody knows about erasure. So codes are written with an implementation >>> glitch in mind. >>> Frankly, I don't know if reification will appear (yes it's a kind of magical) >>> or not >>> but I think it's a sloppy path to not consider all casts as equals. >> >> In order to program effectively with generics, I think you have to understand erasure and its implications. It may have been an unfortunate choice, but erasure is part of the language and we have to deal with it and in some cases rely on it. I don't think it's merely an "implementation glitch." >> >> The difficulty I have with reification is that while there are proposals floating around for how it could be done, nobody really knows how it will eventually turn out, nor whether it will actually be done. If it is eventually done, there will legal and illegal constructs, constructs that generate warnings, and perhaps a style guide for how to use reified generics properly. >> >> Right now, we can *imagine* what these future rules might be, but it seems untenable to me to try to make today's code conform to those imaginary future rules, especially in the absence of tools to help support those rules. >> >>> If unmaskNull return a V, the code of equals will upcast the value from Object >>> to V >>> to just after downcast it from V to Object, >>> I think it's better that unmask to return Object and upcast it to V when it's >>> necessary. >> >> Certainly there are cases where there's a redundant downcast and upcast. In a reified world, will this be a significant expense? Really, I have no idea. >> >> s'marks > > -- > -Kurchi > From martin.kirst at s1998.tu-chemnitz.de Sat Apr 14 08:28:25 2012 From: martin.kirst at s1998.tu-chemnitz.de (Martin Kirst) Date: Sat, 14 Apr 2012 10:28:25 +0200 Subject: 6341887: Inflater can't handle ByteBuffer - first webrev Message-ID: <4F893529.4060309@s1998.tu-chemnitz.de> Hi, I'm interested in contribute some work to openJdk. I found the Sun BUG: 6341887 "Inflater.setInput(), Inflater.inflate() can't handle ByteBuffer". After digging a little in the mailing archives I found nothing. I've coded the first step towards ByteBuffer support. The webrev below supports ByteBuffer for Inflater's and Deflater's output methods. Depending on your comments I would like to go the last step later on. I've in mind, to implement ByteBuffer support for input methods also, using the same approach like ByteBuffer uses. When using direct ByteBuffer for input, you must also use it for output. Same as ByteBuffer#hasArray(). So developers have to use byte arrays or ByteBuffers, but not mixing them. WebRev here: http://dl.dropbox.com/u/52514330/6341887/webrev.00/index.html Feedback is welcome. Regards Martin From Alan.Bateman at oracle.com Sat Apr 14 16:12:37 2012 From: Alan.Bateman at oracle.com (Alan Bateman) Date: Sat, 14 Apr 2012 17:12:37 +0100 Subject: Code Review Request - Bug #6948101 & 7142596: RMI JPRT tests are failing In-Reply-To: <4F88BA9F.2000600@oracle.com> References: <4F88BA9F.2000600@oracle.com> Message-ID: <4F89A1F5.6090308@oracle.com> On 14/04/2012 00:45, Darryl Mocek wrote: > Hello core-libs. Please review this webrev to fix Bug #6948101 and > #7142596. This commit fixes concurrency issues with the RMI tests. > > - Added TestLibrary.getUnusedRandomPort method. This attempts to > return a random port number, which is unused, between the port ranges > 1024 and 64000 (inclusive). It will try up to 10 times before giving up. > - Changed almost all tests from using hard port numbers to using > random port numbers for running the RMI Registry and RMID. > - Removed othervm from those tests which don't need it. > - Added parameters for tests which spawn a separate VM to pass RMI > Registry and RMID ports in cases where needed. > - Added PropertyPermission to security policy files where needed. > - Removed java/rmi and sun/rmi from tests which cannot be run > concurrently. > - Removed java/rmi and sun/rmi from tests which must run in othervm mode. > - Added java/rmi/Naming to list of tests which cannot be run > concurrently. > > Webrev, can be found here: > http://cr.openjdk.java.net/~dmocek/7142596/webrev.00 It's great to see this patch as the RMI tests have been just too slow and the last area of the core libraries that can't take advantage of multi-core machines. Also this patch should eliminate the cascading failures that periodically arise when something goes wrong and a test leaves a registry on the default port, causing problems for subsequent tests. I've looked briefly at the changes (not a full review, I assume Stuart will do that) and if I understand correctly, then this changes don't mean we can run the tests in agentvm mode, right? In that case I don't think the test directory can be removed from the othervms.dir lists in TEST.ROOT. I see the logic in TestLibrary to choose a random port and I'm just wondered if you considered doing LocaleRegistry.createRegistry(0) so that the registry binds to an ephemeral port. It would mean that TestLibrary would need to get to the transport endpoint and port but it would avoid having to try multiple ports. -Alan From xueming.shen at oracle.com Sat Apr 14 18:29:00 2012 From: xueming.shen at oracle.com (Xueming Shen) Date: Sat, 14 Apr 2012 11:29:00 -0700 Subject: 6341887: Inflater can't handle ByteBuffer - first webrev In-Reply-To: <4F893529.4060309@s1998.tu-chemnitz.de> References: <4F893529.4060309@s1998.tu-chemnitz.de> Message-ID: <4F89C1EC.4020007@oracle.com> Hi Martin, Thanks for taking on this one. Here are my comments after first scan (1) Upon return, the position of the ByteBuffer should not always be updated to the "limit". It should depend on the number of bytes really compressed/de-compressed. Like the buffer at ReadableByteChannel.read(buffer). (2) The implementation of the native buffer version and non-buffer version probably can share most of their code in a separated method (3) The input part will be tough. I was struggling with if we should have a totally separated subclass, like DeflaterBuffer/InfalterBuffer (or BufferDefalter/Inflater) to only handle everything in ByteBuffer with methods handles buffer input and output, throw "not supported operation" for those "byte[]" methods. Otherwise you will have to put something in the specification to mandate the behavior of mixed bytebuff and byte[] scenario. I'm not sure which way is more appropriate though. -Sherman On 4/14/2012 1:28 AM, Martin Kirst wrote: > Hi, > > I'm interested in contribute some work to openJdk. > I found the Sun BUG: > 6341887 "Inflater.setInput(), Inflater.inflate() can't handle ByteBuffer". > > After digging a little in the mailing archives I found nothing. > > I've coded the first step towards ByteBuffer support. > The webrev below supports ByteBuffer for Inflater's and Deflater's > output methods. > > Depending on your comments I would like to go the last step > later on. I've in mind, to implement ByteBuffer support for > input methods also, using the same approach like ByteBuffer uses. > When using direct ByteBuffer for input, you must also use it > for output. Same as ByteBuffer#hasArray(). So developers have > to use byte arrays or ByteBuffers, but not mixing them. > > WebRev here: > http://dl.dropbox.com/u/52514330/6341887/webrev.00/index.html > > Feedback is welcome. > > Regards > Martin > > > From Ulf.Zibis at gmx.de Sat Apr 14 19:39:27 2012 From: Ulf.Zibis at gmx.de (Ulf Zibis) Date: Sat, 14 Apr 2012 21:39:27 +0200 Subject: 6341887: Inflater can't handle ByteBuffer - first webrev In-Reply-To: <4F893529.4060309@s1998.tu-chemnitz.de> References: <4F893529.4060309@s1998.tu-chemnitz.de> Message-ID: <4F89D26F.9050200@gmx.de> Am 14.04.2012 10:28, schrieb Martin Kirst: > Hi, > > I'm interested in contribute some work to openJdk. > I found the Sun BUG: > 6341887 "Inflater.setInput(), Inflater.inflate() can't handle ByteBuffer". > > After digging a little in the mailing archives I found nothing. > > I've coded the first step towards ByteBuffer support. > The webrev below supports ByteBuffer for Inflater's and Deflater's > output methods. > > Depending on your comments I would like to go the last step > later on. I've in mind, to implement ByteBuffer support for > input methods also, using the same approach like ByteBuffer uses. > When using direct ByteBuffer for input, you must also use it > for output. Same as ByteBuffer#hasArray(). So developers have > to use byte arrays or ByteBuffers, but not mixing them. > > WebRev here: > http://dl.dropbox.com/u/52514330/6341887/webrev.00/index.html Hi Martin, great deal. Can't we use an Enum for variable flush ? 484 public int deflate(ByteBuffer bbuffer, int flush) { Then we could save things like: 488 if ( (flush == NO_FLUSH || flush == SYNC_FLUSH || flush == FULL_FLUSH ) == false) { 489 throw new IllegalArgumentException(); 490 } Anyway there is a shorter formula: if (flush != NO_FLUSH && flush != SYNC_FLUSH && flush != FULL_FLUSH ) { -Ulf From Alan.Bateman at oracle.com Sat Apr 14 20:43:54 2012 From: Alan.Bateman at oracle.com (Alan Bateman) Date: Sat, 14 Apr 2012 21:43:54 +0100 Subject: 6341887: Inflater can't handle ByteBuffer - first webrev In-Reply-To: <4F893529.4060309@s1998.tu-chemnitz.de> References: <4F893529.4060309@s1998.tu-chemnitz.de> Message-ID: <4F89E18A.5060505@oracle.com> On 14/04/2012 09:28, Martin Kirst wrote: > Hi, > > I'm interested in contribute some work to openJdk. > Martin - I don't see you on the list of signatories to the OCA and that's needed in order to contribute, see the "How to contribute" page [1]. -Alan. [1] http://openjdk.java.net/contribute/ From Alan.Bateman at oracle.com Sat Apr 14 20:57:52 2012 From: Alan.Bateman at oracle.com (Alan Bateman) Date: Sat, 14 Apr 2012 21:57:52 +0100 Subject: 6341887: Inflater can't handle ByteBuffer - first webrev In-Reply-To: <4F89D26F.9050200@gmx.de> References: <4F893529.4060309@s1998.tu-chemnitz.de> <4F89D26F.9050200@gmx.de> Message-ID: <4F89E4D0.2070901@oracle.com> On 14/04/2012 20:39, Ulf Zibis wrote: > : > > > Can't we use an Enum for variable flush ? > Deflater dates back to JDK1.0 and uses an int for the flush mode, level and strategy. Clearly if we were defining Deflater as a new API now then an enum would the top choice but I think it would be a bit inconsistent to introduce it now. -Alan. From Ulf.Zibis at gmx.de Sat Apr 14 21:09:56 2012 From: Ulf.Zibis at gmx.de (Ulf Zibis) Date: Sat, 14 Apr 2012 23:09:56 +0200 Subject: 6341887: Inflater can't handle ByteBuffer - first webrev In-Reply-To: <4F893529.4060309@s1998.tu-chemnitz.de> References: <4F893529.4060309@s1998.tu-chemnitz.de> Message-ID: <4F89E7A4.3070502@gmx.de> Am 14.04.2012 10:28, schrieb Martin Kirst: > WebRev here: > http://dl.dropbox.com/u/52514330/6341887/webrev.00/index.html > > Feedback is welcome. Superfluous (will be addressed by bbuffer.position()) : 485 if (bbuffer == null) { 486 throw new NullPointerException(); 487 } Can (pos < 0 || limit < 0 || pos > limit) ? I believe, all Bytebuffer implementations should ensure this already, so an assert operator would suffice. Anyway, little simpler: 491 final int pos = bbuffer.position(); 492 final int rem = bbuffer.remaining(); 493 if (pos < 0 || rem < 0) { 494 throw new ArrayIndexOutOfBoundsException(); 495 } No need to check rem < 0, so simply: 497 if (rem == 0) return 0; // Z_OK = 0; ... 511 bbuffer.position(pos + rem); // maybe bbuffer.flip() ? Can ByteBuffer not have array and not be instance of DirectBuffer ? Compare to different decision in sun.nio.ch.Xyz.De/Encoder.de/encodeLoop(...) methods ! It seems, variable "off" is never used: 190 JNIEXPORT jint JNICALL 191 Java_java_util_zip_Deflater_deflateByteBuffer(JNIEnv *env, jobject this, jlong zsaddr, 192 jlong bbaddr, jint off, jint len, jint flush) 193 ... -Ulf From Alan.Bateman at oracle.com Sat Apr 14 21:15:34 2012 From: Alan.Bateman at oracle.com (Alan Bateman) Date: Sat, 14 Apr 2012 22:15:34 +0100 Subject: 6341887: Inflater can't handle ByteBuffer - first webrev In-Reply-To: <4F89C1EC.4020007@oracle.com> References: <4F893529.4060309@s1998.tu-chemnitz.de> <4F89C1EC.4020007@oracle.com> Message-ID: <4F89E8F6.7000300@oracle.com> On 14/04/2012 19:29, Xueming Shen wrote: > Hi Martin, > > Thanks for taking on this one. Here are my comments after first scan > > (1) Upon return, the position of the ByteBuffer should not always be > updated to the "limit". It should depend > on the number of bytes really compressed/de-compressed. Like the > buffer at ReadableByteChannel.read(buffer). > > (2) The implementation of the native buffer version and non-buffer > version probably can share most of their > code in a separated method > > (3) The input part will be tough. I was struggling with if we should > have a totally separated subclass, like > DeflaterBuffer/InfalterBuffer (or BufferDefalter/Inflater) to only > handle everything in ByteBuffer with > methods handles buffer input and output, throw "not supported > operation" for those "byte[]" methods. > Otherwise you will have to put something in the specification to > mandate the behavior of mixed bytebuff > and byte[] scenario. I'm not sure which way is more appropriate though. > > -Sherman Sherman - I'll assume you'll sponsor Martin once he's signed up to contribute. I didn't go through the patch in detail but I did notice that the buffer position should be pos + number of bytes written to buffer. Also the ArrayIndexOutOfBoundsException doesn't look right as it's not testable and means the invariant defined by Buffer is violated. In other places its an assert. A test case will also be needed, I didn't see that in the patch. I didn't set new setInput methods in the patch but I agree that would require much more consideration. -Alan From Ulf.Zibis at gmx.de Sat Apr 14 21:33:20 2012 From: Ulf.Zibis at gmx.de (Ulf Zibis) Date: Sat, 14 Apr 2012 23:33:20 +0200 Subject: 6341887: Inflater can't handle ByteBuffer - first webrev In-Reply-To: <4F89C1EC.4020007@oracle.com> References: <4F893529.4060309@s1998.tu-chemnitz.de> <4F89C1EC.4020007@oracle.com> Message-ID: <4F89ED20.5050101@gmx.de> Am 14.04.2012 20:29, schrieb Xueming Shen: > (3) The input part will be tough. I was struggling with if we should have a totally separated > subclass, like > DeflaterBuffer/InfalterBuffer (or BufferDefalter/Inflater) to only handle everything in ByteBuffer > with Another suggestion: DirectDeflater > methods handles buffer input and output, throw "not supported operation" for those "byte[]" methods. No need for that, if we inherit Deflater + DirectDeflater from AbstractDeflater. But personally, I more would like the mandation in the spec. Internally we could set a flag, which detects a mixed usage to throw an exception. -Ulf From Alan.Bateman at oracle.com Sat Apr 14 21:33:34 2012 From: Alan.Bateman at oracle.com (Alan Bateman) Date: Sat, 14 Apr 2012 22:33:34 +0100 Subject: New constructor in sun.tools.java.ClassPath builds a path using File.separator instead of File.pathSeparatorChar In-Reply-To: <4F87EE74.5040904@linux.vnet.ibm.com> References: <4F82892C.7090709@linux.vnet.ibm.com> <4F82A5FC.7080601@oracle.com> <4F82ACCA.800@linux.vnet.ibm.com> <4F83EB5C.7040205@oracle.com> <4F853662.8020404@linux.vnet.ibm.com> <4F868066.8010602@linux.vnet.ibm.com> <4F868299.4000403@linux.vnet.ibm.com> <4F8691C4.8050107@oracle.com> <4F878D98.8010205@linux.vnet.ibm.com> <4F87E79F.50504@oracle.com> <4F87EE74.5040904@linux.vnet.ibm.com> Message-ID: <4F89ED2E.7040804@oracle.com> On 13/04/2012 10:14, Charles Lee wrote: > Hi Alan, > > The patch is @ http://cr.openjdk.java.net/~littlee/7161282/webrev.00/ > > > Please help reviewing it :-) Looks okay to me, thanks for moving it. -Alan From Ulf.Zibis at gmx.de Sat Apr 14 22:21:51 2012 From: Ulf.Zibis at gmx.de (Ulf Zibis) Date: Sun, 15 Apr 2012 00:21:51 +0200 Subject: 6341887: Inflater can't handle ByteBuffer - first webrev In-Reply-To: <4F89ED20.5050101@gmx.de> References: <4F893529.4060309@s1998.tu-chemnitz.de> <4F89C1EC.4020007@oracle.com> <4F89ED20.5050101@gmx.de> Message-ID: <4F89F87F.7060502@gmx.de> Am 14.04.2012 23:33, schrieb Ulf Zibis: > Am 14.04.2012 20:29, schrieb Xueming Shen: >> (3) The input part will be tough. I was struggling with if we should have a totally separated >> subclass, like >> DeflaterBuffer/InfalterBuffer (or BufferDefalter/Inflater) to only handle everything in >> ByteBuffer with > Another suggestion: DirectDeflater Or better: MappedDeflater ("Direct..." is only known from package sun.nio) > >> methods handles buffer input and output, throw "not supported operation" for those "byte[]" methods. > No need for that, if we inherit Deflater + DirectDeflater from AbstractDeflater. > But personally, I more would like the mandation in the spec. Internally we could set a flag, which > detects a mixed usage to throw an exception. Another Suggestion (to additionally avoid the internal instanceof etc.): public int deflate(MappedByteBuffer bbuffer, int flush) {...} + public int deflate(ByteBuffer bbuffer, int flush) {...} -Ulf From xueming.shen at oracle.com Sun Apr 15 06:53:33 2012 From: xueming.shen at oracle.com (Xueming Shen) Date: Sat, 14 Apr 2012 23:53:33 -0700 Subject: 6341887: Inflater can't handle ByteBuffer - first webrev In-Reply-To: <4F89C1EC.4020007@oracle.com> References: <4F893529.4060309@s1998.tu-chemnitz.de> <4F89C1EC.4020007@oracle.com> Message-ID: <4F8A706D.2050103@oracle.com> (4) The logic in "non-direct" and "non-array backed" case is incorrect, both deflater and inflater. ... } else { final byte[] tmparray = new byte[rem]; bbuffer.get(tmparray); result = deflate(tmparray, pos, rem, flush); } The bbuffer here is not a "input" buffer but an output buffer to hold the compressed/uncompressed output data. So the implementation should be (1) create a temporary array with the size of rem (2) pass the temporary array into deflate/inflate (3) copy the "result" number of byte from the temporary array into bbuffer (4) return "result" -Sherman On 4/14/2012 11:29 AM, Xueming Shen wrote: > Hi Martin, > > Thanks for taking on this one. Here are my comments after first scan > > (1) Upon return, the position of the ByteBuffer should not always be > updated to the "limit". It should depend > on the number of bytes really compressed/de-compressed. Like the > buffer at ReadableByteChannel.read(buffer). > > (2) The implementation of the native buffer version and non-buffer > version probably can share most of their > code in a separated method > > (3) The input part will be tough. I was struggling with if we should > have a totally separated subclass, like > DeflaterBuffer/InfalterBuffer (or BufferDefalter/Inflater) to only > handle everything in ByteBuffer with > methods handles buffer input and output, throw "not supported > operation" for those "byte[]" methods. > Otherwise you will have to put something in the specification to > mandate the behavior of mixed bytebuff > and byte[] scenario. I'm not sure which way is more appropriate though. > > -Sherman > > On 4/14/2012 1:28 AM, Martin Kirst wrote: >> Hi, >> >> I'm interested in contribute some work to openJdk. >> I found the Sun BUG: >> 6341887 "Inflater.setInput(), Inflater.inflate() can't handle >> ByteBuffer". >> >> After digging a little in the mailing archives I found nothing. >> >> I've coded the first step towards ByteBuffer support. >> The webrev below supports ByteBuffer for Inflater's and Deflater's >> output methods. >> >> Depending on your comments I would like to go the last step >> later on. I've in mind, to implement ByteBuffer support for >> input methods also, using the same approach like ByteBuffer uses. >> When using direct ByteBuffer for input, you must also use it >> for output. Same as ByteBuffer#hasArray(). So developers have >> to use byte arrays or ByteBuffers, but not mixing them. >> >> WebRev here: >> http://dl.dropbox.com/u/52514330/6341887/webrev.00/index.html >> >> Feedback is welcome. >> >> Regards >> Martin >> >> >> From martin.kirst at s1998.tu-chemnitz.de Sun Apr 15 12:45:53 2012 From: martin.kirst at s1998.tu-chemnitz.de (Martin Kirst) Date: Sun, 15 Apr 2012 14:45:53 +0200 Subject: 6341887: Inflater can't handle ByteBuffer - first webrev In-Reply-To: <4F89E18A.5060505@oracle.com> References: <4F893529.4060309@s1998.tu-chemnitz.de> <4F89E18A.5060505@oracle.com> Message-ID: <4F8AC301.1060706@s1998.tu-chemnitz.de> Am 14.04.2012 22:43, schrieb Alan Bateman: > Martin - I don't see you on the list of signatories to the OCA and > that's needed in order to contribute, see the "How to contribute" page [1]. Hi, will sign it on Monday. Regards Martin From littlee at linux.vnet.ibm.com Mon Apr 16 03:13:15 2012 From: littlee at linux.vnet.ibm.com (littlee at linux.vnet.ibm.com) Date: Mon, 16 Apr 2012 03:13:15 +0000 Subject: hg: jdk8/tl/jdk: 7161282: Move test/sun/tools/classpath/RMICClassPathTest.java to a more appropriate location Message-ID: <20120416031333.D4249470D5@hg.openjdk.java.net> Changeset: 92c6d920efe0 Author: littlee Date: 2012-04-16 11:12 +0800 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/92c6d920efe0 7161282: Move test/sun/tools/classpath/RMICClassPathTest.java to a more appropriate location Reviewed-by: alanb + test/sun/rmi/rmic/classpath/RMICClassPathTest.java - test/sun/tools/classpath/RMICClassPathTest.java From paul.sandoz at oracle.com Mon Apr 16 08:24:30 2012 From: paul.sandoz at oracle.com (Paul Sandoz) Date: Mon, 16 Apr 2012 10:24:30 +0200 Subject: Codereview request 7067045: replaceAll("\u20ac", "$"); causses java.lang.StringIndexOutOfBoundsExceptio In-Reply-To: <4F87366F.3050708@oracle.com> References: <4F87366F.3050708@oracle.com> Message-ID: <3FE9CA49-84EC-40C2-91F6-F21744E76A5F@oracle.com> Hi Sherman, IMHO it is worth spending a little time getting the exception messages a little more accurate. I have spent too many a time staring at such messages wondering what the heck is going on :-) e.g. Syntax error parsing replacement string: escaped literal character is missing at the end of the string. Syntax error parsing replacement string: group reference is missing at the end of the string. Since i am proposing this i will send a patch. It will help me get familiar with the whole OpenJDK process. Pau;. On Apr 12, 2012, at 10:09 PM, Xueming Shen wrote: > Hi > > Please help review the change for 7067045. > > The change is to throw a more meaningful IAE instead of the StringIndexoutputOfBoundsException > if backslash or $ is the last character in the replacement string. (as the API indicated, the backslash > and $ character in String's regex replacement and Matcher class have special meanings, backslash > is for literal character escape and the $ is the capturing group reference, which needs a group index). > > http://cr.openjdk.java.net/~sherman/7067045/webrev/ > > Thanks, > -Sherman From sean.mullan at oracle.com Mon Apr 16 14:20:13 2012 From: sean.mullan at oracle.com (Sean Mullan) Date: Mon, 16 Apr 2012 10:20:13 -0400 Subject: RFR [JDK8]: 7160380 Sync JDK8 with JAXP 1.4.5 In-Reply-To: <4F87563F.8090909@oracle.com> References: <4F87563F.8090909@oracle.com> Message-ID: <4F8C2A9D.1070400@oracle.com> On 4/12/12 6:25 PM, Joe Wang wrote: > This is a follow-up update on Kelly's change that dropped the jaxp > source drop bundle process. With this update, the jaxp source in JDK8 > will be sync-ed with the current JAXP 1.4.5, and also JDK7u (the last > change was 7151484). Going forward, we'll follow the process to put any > changes into JDK8 before 7ux. > > webrev: http://cr.openjdk.java.net/~joehw/jdk8/7160380/webrev/ > > webrev for the change of package access: > http://cr.openjdk.java.net/~joehw/jdk8/7160380/jdk/webrev/ I only reviewed the package access webrev above. Could you also add the regression test that was added for 7u4: http://hg.openjdk.java.net/jdk7u/jdk7u4-dev/jdk/rev/e84d607e9b13 Looks good otherwise. Thanks, Sean From huizhe.wang at oracle.com Mon Apr 16 16:11:27 2012 From: huizhe.wang at oracle.com (Joe Wang) Date: Mon, 16 Apr 2012 09:11:27 -0700 Subject: RFR [JDK8]: 7160380 Sync JDK8 with JAXP 1.4.5 In-Reply-To: <4F8C2A9D.1070400@oracle.com> References: <4F87563F.8090909@oracle.com> <4F8C2A9D.1070400@oracle.com> Message-ID: <4F8C44AF.9070709@oracle.com> On 4/16/2012 7:20 AM, Sean Mullan wrote: > On 4/12/12 6:25 PM, Joe Wang wrote: >> This is a follow-up update on Kelly's change that dropped the jaxp >> source drop bundle process. With this update, the jaxp source in JDK8 >> will be sync-ed with the current JAXP 1.4.5, and also JDK7u (the last >> change was 7151484). Going forward, we'll follow the process to put any >> changes into JDK8 before 7ux. >> >> webrev: http://cr.openjdk.java.net/~joehw/jdk8/7160380/webrev/ >> >> webrev for the change of package access: >> http://cr.openjdk.java.net/~joehw/jdk8/7160380/jdk/webrev/ > I only reviewed the package access webrev above. Could you also add the > regression test that was added for 7u4: > > http://hg.openjdk.java.net/jdk7u/jdk7u4-dev/jdk/rev/e84d607e9b13 JAXP tests are in SQE's workspace. I'll pass this test to them. >Looks good otherwise. Great, thanks! Joe > > Thanks, > Sean From paul.sandoz at oracle.com Mon Apr 16 16:55:27 2012 From: paul.sandoz at oracle.com (Paul Sandoz) Date: Mon, 16 Apr 2012 18:55:27 +0200 Subject: Review for 7157656 (zipfs) SeekableByteChannel to entry in zip file... Message-ID: <903CA3B7-35C5-49A2-8D72-58C87ABC394D@oracle.com> Hi, I ain't got permission to publish webrevs yet. So attached is a patch produced by hg export on the jdk tree for: 7157656 (zipfs) SeekableByteChannel to entry in zip file always reports its position as 0 Paul. -------------- next part -------------- An embedded and charset-unspecified text was scrubbed... Name: 7157656.hg.export.txt URL: From darryl.mocek at oracle.com Mon Apr 16 18:34:45 2012 From: darryl.mocek at oracle.com (Darryl Mocek) Date: Mon, 16 Apr 2012 11:34:45 -0700 Subject: Code Review Request - Bug #6948101 & 7142596: RMI JPRT tests are failing In-Reply-To: <4F89A1F5.6090308@oracle.com> References: <4F88BA9F.2000600@oracle.com> <4F89A1F5.6090308@oracle.com> Message-ID: <4F8C6645.3030708@oracle.com> See inline On Sat 14 Apr 2012 09:12:37 AM PDT, Alan Bateman wrote: > > On 14/04/2012 00:45, Darryl Mocek wrote: >> >> Hello core-libs. Please review this webrev to fix Bug #6948101 and >> #7142596. This commit fixes concurrency issues with the RMI tests. >> >> - Added TestLibrary.getUnusedRandomPort method. This attempts to >> return a random port number, which is unused, between the port ranges >> 1024 and 64000 (inclusive). It will try up to 10 times before giving up. >> - Changed almost all tests from using hard port numbers to using >> random port numbers for running the RMI Registry and RMID. >> - Removed othervm from those tests which don't need it. >> - Added parameters for tests which spawn a separate VM to pass RMI >> Registry and RMID ports in cases where needed. >> - Added PropertyPermission to security policy files where needed. >> - Removed java/rmi and sun/rmi from tests which cannot be run >> concurrently. >> - Removed java/rmi and sun/rmi from tests which must run in othervm >> mode. >> - Added java/rmi/Naming to list of tests which cannot be run >> concurrently. >> >> Webrev, can be found here: >> http://cr.openjdk.java.net/~dmocek/7142596/webrev.00 > > It's great to see this patch as the RMI tests have been just too slow > and the last area of the core libraries that can't take advantage of > multi-core machines. Also this patch should eliminate the cascading > failures that periodically arise when something goes wrong and a test > leaves a registry on the default port, causing problems for subsequent > tests. > > I've looked briefly at the changes (not a full review, I assume Stuart > will do that) and if I understand correctly, then this changes don't > mean we can run the tests in agentvm mode, right? In that case I don't > think the test directory can be removed from the othervms.dir lists in > TEST.ROOT. Ah, yes, with -agentvm specified, many tests fail. I'll have to add java/rmi and sun/rmi back to the list of tests which must be run in othervm mode and I should probably add back othervm to the tests I removed it from. At least with the port conflict fix, we can run the tests concurrently and they will run much faster. > > I see the logic in TestLibrary to choose a random port and I'm just > wondered if you considered doing LocaleRegistry.createRegistry(0) so > that the registry binds to an ephemeral port. It would mean that > TestLibrary would need to get to the transport endpoint and port but > it would avoid having to try multiple ports. I would have like to use LocaleRegistry.createRegistry(0), but I don't see a way to get the port number once the registry is created, which is required. I originally tried creating a TestLocaleRegistry which extends LocateRegistry, with a getPort() method, but this didn't work either. Darryl > > -Alan > > > From huizhe.wang at oracle.com Mon Apr 16 18:38:51 2012 From: huizhe.wang at oracle.com (Joe Wang) Date: Mon, 16 Apr 2012 11:38:51 -0700 Subject: RFR [JDK8]: 7160380 Sync JDK8 with JAXP 1.4.5 In-Reply-To: <4F8C2A9D.1070400@oracle.com> References: <4F87563F.8090909@oracle.com> <4F8C2A9D.1070400@oracle.com> Message-ID: <4F8C673B.8000406@oracle.com> I've added the testcase. The new webrev is here: http://cr.openjdk.java.net/~joehw/jdk8/7160380/jdk/webrev/ Also, Lance has reviewed the long list of the source changes. Thanks! -Joe On 4/16/2012 7:20 AM, Sean Mullan wrote: > On 4/12/12 6:25 PM, Joe Wang wrote: >> This is a follow-up update on Kelly's change that dropped the jaxp >> source drop bundle process. With this update, the jaxp source in JDK8 >> will be sync-ed with the current JAXP 1.4.5, and also JDK7u (the last >> change was 7151484). Going forward, we'll follow the process to put any >> changes into JDK8 before 7ux. >> >> webrev: http://cr.openjdk.java.net/~joehw/jdk8/7160380/webrev/ >> >> webrev for the change of package access: >> http://cr.openjdk.java.net/~joehw/jdk8/7160380/jdk/webrev/ > I only reviewed the package access webrev above. Could you also add the > regression test that was added for 7u4: > > http://hg.openjdk.java.net/jdk7u/jdk7u4-dev/jdk/rev/e84d607e9b13 > > Looks good otherwise. > > Thanks, > Sean From alan.bateman at oracle.com Mon Apr 16 19:15:03 2012 From: alan.bateman at oracle.com (alan.bateman at oracle.com) Date: Mon, 16 Apr 2012 19:15:03 +0000 Subject: hg: jdk8/tl/jdk: 7143744: (se) Stabilize KQueue SelectorProvider and make default on MacOSX Message-ID: <20120416191521.EBB18470F2@hg.openjdk.java.net> Changeset: c0f34986d1c5 Author: alanb Date: 2012-04-16 20:12 +0100 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/c0f34986d1c5 7143744: (se) Stabilize KQueue SelectorProvider and make default on MacOSX Reviewed-by: michaelm, chegar ! src/macosx/classes/sun/nio/ch/DefaultSelectorProvider.java ! src/macosx/classes/sun/nio/ch/KQueueArrayWrapper.java ! src/macosx/classes/sun/nio/ch/KQueueSelectorImpl.java ! src/macosx/classes/sun/nio/ch/KQueueSelectorProvider.java ! src/macosx/native/sun/nio/ch/KQueueArrayWrapper.c ! test/java/nio/channels/Selector/OpRead.java ! test/sun/nio/ch/SelProvider.java From sean.mullan at oracle.com Mon Apr 16 19:16:03 2012 From: sean.mullan at oracle.com (Sean Mullan) Date: Mon, 16 Apr 2012 12:16:03 -0700 (PDT) Subject: RFR [JDK8]: 7160380 Sync JDK8 with JAXP 1.4.5 In-Reply-To: <4F8C673B.8000406@oracle.com> References: <4F87563F.8090909@oracle.com> <4F8C2A9D.1070400@oracle.com> <4F8C673B.8000406@oracle.com> Message-ID: <4F8C6FF3.6020506@oracle.com> On 4/16/12 2:38 PM, Joe Wang wrote: > I've added the testcase. The new webrev is here: > http://cr.openjdk.java.net/~joehw/jdk8/7160380/jdk/webrev/ Looks good. Thanks, Sean > > Also, Lance has reviewed the long list of the source changes. > > Thanks! > > -Joe > > On 4/16/2012 7:20 AM, Sean Mullan wrote: >> On 4/12/12 6:25 PM, Joe Wang wrote: >>> This is a follow-up update on Kelly's change that dropped the jaxp >>> source drop bundle process. With this update, the jaxp source in JDK8 >>> will be sync-ed with the current JAXP 1.4.5, and also JDK7u (the last >>> change was 7151484). Going forward, we'll follow the process to put any >>> changes into JDK8 before 7ux. >>> >>> webrev: http://cr.openjdk.java.net/~joehw/jdk8/7160380/webrev/ >>> >>> webrev for the change of package access: >>> http://cr.openjdk.java.net/~joehw/jdk8/7160380/jdk/webrev/ >> I only reviewed the package access webrev above. Could you also add the >> regression test that was added for 7u4: >> >> http://hg.openjdk.java.net/jdk7u/jdk7u4-dev/jdk/rev/e84d607e9b13 >> >> Looks good otherwise. >> >> Thanks, >> Sean From kurchi.subhra.hazra at oracle.com Mon Apr 16 19:31:20 2012 From: kurchi.subhra.hazra at oracle.com (Kurchi Hazra) Date: Mon, 16 Apr 2012 12:31:20 -0700 Subject: Code Review Request: 7157893: Warnings Cleanup in java.util.* In-Reply-To: <632E281F-D130-4BFA-A2E8-BFD34EC8D5EB@oracle.com> References: <4F74FB13.3070407@oracle.com> <4F755D32.6080804@univ-mlv.fr> <4F7D44E8.1020408@oracle.com> <4F7D5407.1040808@univ-mlv.fr> <4F7E08FA.8010200@oracle.com> <4F7EC027.1040101@univ-mlv.fr> <4F7F8BB8.6070103@oracle.com> <4F84BF06.4090802@oracle.com> <632E281F-D130-4BFA-A2E8-BFD34EC8D5EB@oracle.com> Message-ID: <4F8C7388.3050908@oracle.com> On 4/13/2012 8:26 PM, Mike Duigou wrote: > Looks good for commit. Just a few notes > > > EnumMap.java: > > maskNull seemed to have the unchecked cast well bottlenecked. Why move the cast outside of unmaskNull() and thus require @SuppressWarnings("unchecked") in many other places. I agree with this one. I have updated EnumMap.java to remove cast in unmaskNull() and then remove the unrequired casts. (and some changes in 724, 740 and 789 while I was there) Thanks, Kurchi > Mike > > > On Apr 10 2012, at 16:15 , Kurchi Hazra wrote: > >> Hi Stuart, >> >> Please find the updated webrev here: http://cr.openjdk.java.net/~khazra/7157893/webrev.01/ >> >> I hope to have included all the suggestions correctly. Also, note that I made some new changes in Hashtable.java at lines 185, 355 and 910 to get rid of some additional warnings. >> >> Thanks, >> Kurchi >> >> >> On 4/6/2012 5:35 PM, Stuart Marks wrote: >>> Hi Kurchi, I think we've converged on the code changes. Please prepare and post another webrev for a final cross-check before pushing. >>> >>> What follows is I think merely residual disagreement over the philosophy of how to handle generic casts vs reification. :-) >>> >>> On 4/6/12 3:06 AM, R?mi Forax wrote: >>>> On 04/05/2012 11:04 PM, Stuart Marks wrote: >>>>> I'm somewhat skeptical of making code changes now based on potential future >>>>> benefits when/if generics become reified. This was discussed before; see >>>>> >>>>> http://mail.openjdk.java.net/pipermail/jdk8-dev/2011-December/000454.html >>>>> >>>>> In that message, John Rose said "If the best practices have to change, then >>>>> we'll have to change that code again. Or maybe the retrofit strategy will >>>>> have to take account of the existing code idioms. In any case, we'll cross >>>>> that bridge when we get to it. (Coping with reification in this case is a >>>>> decision to make tomorrow, not today.)" >>>> I disagree with John. The main issue with generics nowadays is that >>>> most of the people doesn't care about a cast to a type variable because >>>> everybody knows about erasure. So codes are written with an implementation >>>> glitch in mind. >>>> Frankly, I don't know if reification will appear (yes it's a kind of magical) >>>> or not >>>> but I think it's a sloppy path to not consider all casts as equals. >>> In order to program effectively with generics, I think you have to understand erasure and its implications. It may have been an unfortunate choice, but erasure is part of the language and we have to deal with it and in some cases rely on it. I don't think it's merely an "implementation glitch." >>> >>> The difficulty I have with reification is that while there are proposals floating around for how it could be done, nobody really knows how it will eventually turn out, nor whether it will actually be done. If it is eventually done, there will legal and illegal constructs, constructs that generate warnings, and perhaps a style guide for how to use reified generics properly. >>> >>> Right now, we can *imagine* what these future rules might be, but it seems untenable to me to try to make today's code conform to those imaginary future rules, especially in the absence of tools to help support those rules. >>> >>>> If unmaskNull return a V, the code of equals will upcast the value from Object >>>> to V >>>> to just after downcast it from V to Object, >>>> I think it's better that unmask to return Object and upcast it to V when it's >>>> necessary. >>> Certainly there are cases where there's a redundant downcast and upcast. In a reified world, will this be a significant expense? Really, I have no idea. >>> >>> s'marks >> -- >> -Kurchi >> -- -Kurchi From kurchi.subhra.hazra at oracle.com Mon Apr 16 20:18:37 2012 From: kurchi.subhra.hazra at oracle.com (Kurchi Hazra) Date: Mon, 16 Apr 2012 13:18:37 -0700 Subject: Code Review Request: 7157893: Warnings Cleanup in java.util.* In-Reply-To: <4F8C7388.3050908@oracle.com> References: <4F74FB13.3070407@oracle.com> <4F755D32.6080804@univ-mlv.fr> <4F7D44E8.1020408@oracle.com> <4F7D5407.1040808@univ-mlv.fr> <4F7E08FA.8010200@oracle.com> <4F7EC027.1040101@univ-mlv.fr> <4F7F8BB8.6070103@oracle.com> <4F84BF06.4090802@oracle.com> <632E281F-D130-4BFA-A2E8-BFD34EC8D5EB@oracle.com> <4F8C7388.3050908@oracle.com> Message-ID: <4F8C7E9D.4080301@oracle.com> Sorry, I forgot to insert a link to the webrev : http://cr.openjdk.java.net/~khazra/7157893/webrev.02/ - Kurchi On 4/16/2012 12:31 PM, Kurchi Hazra wrote: > > > On 4/13/2012 8:26 PM, Mike Duigou wrote: >> Looks good for commit. Just a few notes >> >> >> EnumMap.java: >> >> maskNull seemed to have the unchecked cast well bottlenecked. Why >> move the cast outside of unmaskNull() and thus require >> @SuppressWarnings("unchecked") in many other places. > > I agree with this one. I have updated EnumMap.java to remove cast in > unmaskNull() and then remove the unrequired casts. (and some changes > in 724, 740 and 789 while I was there) > > > Thanks, > Kurchi > > >> Mike >> >> >> On Apr 10 2012, at 16:15 , Kurchi Hazra wrote: >> >>> Hi Stuart, >>> >>> Please find the updated webrev here: >>> http://cr.openjdk.java.net/~khazra/7157893/webrev.01/ >>> >>> I hope to have included all the suggestions correctly. Also, note >>> that I made some new changes in Hashtable.java at lines 185, 355 and >>> 910 to get rid of some additional warnings. >>> >>> Thanks, >>> Kurchi >>> >>> >>> On 4/6/2012 5:35 PM, Stuart Marks wrote: >>>> Hi Kurchi, I think we've converged on the code changes. Please >>>> prepare and post another webrev for a final cross-check before >>>> pushing. >>>> >>>> What follows is I think merely residual disagreement over the >>>> philosophy of how to handle generic casts vs reification. :-) >>>> >>>> On 4/6/12 3:06 AM, R?mi Forax wrote: >>>>> On 04/05/2012 11:04 PM, Stuart Marks wrote: >>>>>> I'm somewhat skeptical of making code changes now based on >>>>>> potential future >>>>>> benefits when/if generics become reified. This was discussed >>>>>> before; see >>>>>> >>>>>> http://mail.openjdk.java.net/pipermail/jdk8-dev/2011-December/000454.html >>>>>> >>>>>> >>>>>> In that message, John Rose said "If the best practices have to >>>>>> change, then >>>>>> we'll have to change that code again. Or maybe the retrofit >>>>>> strategy will >>>>>> have to take account of the existing code idioms. In any case, >>>>>> we'll cross >>>>>> that bridge when we get to it. (Coping with reification in this >>>>>> case is a >>>>>> decision to make tomorrow, not today.)" >>>>> I disagree with John. The main issue with generics nowadays is that >>>>> most of the people doesn't care about a cast to a type variable >>>>> because >>>>> everybody knows about erasure. So codes are written with an >>>>> implementation >>>>> glitch in mind. >>>>> Frankly, I don't know if reification will appear (yes it's a kind >>>>> of magical) >>>>> or not >>>>> but I think it's a sloppy path to not consider all casts as equals. >>>> In order to program effectively with generics, I think you have to >>>> understand erasure and its implications. It may have been an >>>> unfortunate choice, but erasure is part of the language and we have >>>> to deal with it and in some cases rely on it. I don't think it's >>>> merely an "implementation glitch." >>>> >>>> The difficulty I have with reification is that while there are >>>> proposals floating around for how it could be done, nobody really >>>> knows how it will eventually turn out, nor whether it will actually >>>> be done. If it is eventually done, there will legal and illegal >>>> constructs, constructs that generate warnings, and perhaps a style >>>> guide for how to use reified generics properly. >>>> >>>> Right now, we can *imagine* what these future rules might be, but >>>> it seems untenable to me to try to make today's code conform to >>>> those imaginary future rules, especially in the absence of tools to >>>> help support those rules. >>>> >>>>> If unmaskNull return a V, the code of equals will upcast the value >>>>> from Object >>>>> to V >>>>> to just after downcast it from V to Object, >>>>> I think it's better that unmask to return Object and upcast it to >>>>> V when it's >>>>> necessary. >>>> Certainly there are cases where there's a redundant downcast and >>>> upcast. In a reified world, will this be a significant expense? >>>> Really, I have no idea. >>>> >>>> s'marks >>> -- >>> -Kurchi >>> > -- -Kurchi From martin.kirst at s1998.tu-chemnitz.de Mon Apr 16 20:43:01 2012 From: martin.kirst at s1998.tu-chemnitz.de (Martin Kirst) Date: Mon, 16 Apr 2012 22:43:01 +0200 Subject: 6341887: Inflater can't handle ByteBuffer - first webrev In-Reply-To: <4F893529.4060309@s1998.tu-chemnitz.de> References: <4F893529.4060309@s1998.tu-chemnitz.de> Message-ID: <4F8C8455.1050601@s1998.tu-chemnitz.de> Am 14.04.2012 10:28, schrieb Martin Kirst: > Hi, > [...] > WebRev here: > http://dl.dropbox.com/u/52514330/6341887/webrev.00/index.html > > Feedback is welcome. Thanks for all your feedback. Today, I've send my signed OCA to oracle-ca_us(at)oracle.com. >From all your feedback I've caught the following tasks for me: * BB.position() should be set not to limit, but number of (in|de)flated bytes insteand * the if-clause for FLUSH options can be shortened and should be kept as integers (not enums) * the (bbuffer==null) guarding if statement is superfluous * creating test cases * ArrayIndexOutOfBounds check should be an assert * last if-else-else-clause for not direct ByteBuffer.get() is incorrect * consider refactoring native parts considering DRY * because of the missing #setInput(ByteBuffer) methods, I will create MappedBuffer(De|In)flater (my proposal for class name) which will be specialized classes from Abstract(In/Deflater) Thus the specialized implementations hopefully will be more clear. And last but not least, it seems that Sherman will be my sponsor, will he? I was pleased to read your valuable feedback and being (somehow) part of the team :-) Regards Martin From Roger.Riggs at oracle.com Mon Apr 16 21:08:59 2012 From: Roger.Riggs at oracle.com (Roger Riggs) Date: Mon, 16 Apr 2012 17:08:59 -0400 Subject: Reviewer needed: 6282196 There should be Math.mod(number, modulo) methods In-Reply-To: <4F54C1E7.2050802@oracle.com> References: <4F44FA81.9020108@oracle.com> <4F54C1E7.2050802@oracle.com> Message-ID: <4F8C8A6B.8020606@oracle.com> Hi, I've corrected a number of issues raised with javadoc in java.lang.Math and java.lang.StrictMath. The updated webrev is: http://cr.openjdk.java.net/~rriggs/6282196.2/ Please review. Thanks, Roger On 03/05/2012 08:38 AM, Roger Riggs wrote: > CR 6282196 There should be Math.mod(number, modulo) methods > http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6282196 > > Requests that floor and modulus methods be provided for primitive types. > Floor division is pretty straight-forward, rounding toward minus > infinity. > For modulus of int and long, the sign and range follow the exiting > floor method > in java.util.Math and satisfy the relation that mod(x, y) = (x - > floorDiv(x, y) * y). > From alexlamsl at gmail.com Mon Apr 16 21:27:25 2012 From: alexlamsl at gmail.com (Alex Lam S.L.) Date: Mon, 16 Apr 2012 22:27:25 +0100 Subject: Reviewer needed: 6282196 There should be Math.mod(number, modulo) methods In-Reply-To: <4F8C8A6B.8020606@oracle.com> References: <4F44FA81.9020108@oracle.com> <4F54C1E7.2050802@oracle.com> <4F8C8A6B.8020606@oracle.com> Message-ID: Hi there, Sorry if this has been asked before, but I am curious as to why the newer methods in StrictMath (including addExact etc.) are now delegating to methods in Math. Looking at the other static methods, they seem to be going in the opposite direction, i.e. Math methods calling equivalent methods in StrictMath. Thanks, Alex. On Mon, Apr 16, 2012 at 10:08 PM, Roger Riggs wrote: > Hi, > > I've corrected a number of issues raised with javadoc in java.lang.Math > and java.lang.StrictMath. ?The updated webrev is: > ?http://cr.openjdk.java.net/~rriggs/6282196.2/ > > Please review. > > Thanks, Roger > > > > On 03/05/2012 08:38 AM, Roger Riggs wrote: >> >> CR 6282196 There should be Math.mod(number, modulo) methods >> ?http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6282196 >> >> Requests that floor and modulus methods be provided for primitive types. >> Floor division is pretty straight-forward, rounding toward minus infinity. >> For modulus of int and long, the sign and range follow ?the exiting floor >> method >> in java.util.Math and satisfy the relation that mod(x, y) = (x - >> floorDiv(x, y) * y). >> > From stuart.marks at oracle.com Mon Apr 16 22:26:59 2012 From: stuart.marks at oracle.com (Stuart Marks) Date: Mon, 16 Apr 2012 15:26:59 -0700 Subject: Code Review Request: 7157893: Warnings Cleanup in java.util.* In-Reply-To: <4F8C7E9D.4080301@oracle.com> References: <4F74FB13.3070407@oracle.com> <4F755D32.6080804@univ-mlv.fr> <4F7D44E8.1020408@oracle.com> <4F7D5407.1040808@univ-mlv.fr> <4F7E08FA.8010200@oracle.com> <4F7EC027.1040101@univ-mlv.fr> <4F7F8BB8.6070103@oracle.com> <4F84BF06.4090802@oracle.com> <632E281F-D130-4BFA-A2E8-BFD34EC8D5EB@oracle.com> <4F8C7388.3050908@oracle.com> <4F8C7E9D.4080301@oracle.com> Message-ID: <4F8C9CB3.3090208@oracle.com> On 4/16/12 1:18 PM, Kurchi Hazra wrote: > Sorry, I forgot to insert a link to the webrev : > http://cr.openjdk.java.net/~khazra/7157893/webrev.02/ > > On 4/16/2012 12:31 PM, Kurchi Hazra wrote: >> >> On 4/13/2012 8:26 PM, Mike Duigou wrote: >>> Looks good for commit. Just a few notes >>> >>> EnumMap.java: >>> >>> maskNull seemed to have the unchecked cast well bottlenecked. Why move the >>> cast outside of unmaskNull() and thus require @SuppressWarnings("unchecked") >>> in many other places. >> >> I agree with this one. I have updated EnumMap.java to remove cast in >> unmaskNull() and then remove the unrequired casts. (and some changes in 724, >> 740 and 789 while I was there) I should point out that I had previously mentioned the casting in unmaskNull but that Remi had disagreed [1]. I was content to let Remi's recommendation stand but since Mike raised it again, and Kurchi agreed, I guess that Remi has been outvoted while I distracted him by discussing generic reification. :-) Anyway I think this latest webrev is fine. s'marks [1] http://mail.openjdk.java.net/pipermail/core-libs-dev/2012-April/009755.html From forax at univ-mlv.fr Mon Apr 16 22:48:09 2012 From: forax at univ-mlv.fr (=?ISO-8859-1?Q?R=E9mi_Forax?=) Date: Tue, 17 Apr 2012 00:48:09 +0200 Subject: Code Review Request: 7157893: Warnings Cleanup in java.util.* In-Reply-To: <4F8C9CB3.3090208@oracle.com> References: <4F74FB13.3070407@oracle.com> <4F755D32.6080804@univ-mlv.fr> <4F7D44E8.1020408@oracle.com> <4F7D5407.1040808@univ-mlv.fr> <4F7E08FA.8010200@oracle.com> <4F7EC027.1040101@univ-mlv.fr> <4F7F8BB8.6070103@oracle.com> <4F84BF06.4090802@oracle.com> <632E281F-D130-4BFA-A2E8-BFD34EC8D5EB@oracle.com> <4F8C7388.3050908@oracle.com> <4F8C7E9D.4080301@oracle.com> <4F8C9CB3.3090208@oracle.com> Message-ID: <4F8CA1A9.9030202@univ-mlv.fr> On 04/17/2012 12:26 AM, Stuart Marks wrote: > On 4/16/12 1:18 PM, Kurchi Hazra wrote: >> Sorry, I forgot to insert a link to the webrev : >> http://cr.openjdk.java.net/~khazra/7157893/webrev.02/ >> >> On 4/16/2012 12:31 PM, Kurchi Hazra wrote: >>> >>> On 4/13/2012 8:26 PM, Mike Duigou wrote: >>>> Looks good for commit. Just a few notes >>>> >>>> EnumMap.java: >>>> >>>> maskNull seemed to have the unchecked cast well bottlenecked. Why >>>> move the >>>> cast outside of unmaskNull() and thus require >>>> @SuppressWarnings("unchecked") >>>> in many other places. >>> >>> I agree with this one. I have updated EnumMap.java to remove cast in >>> unmaskNull() and then remove the unrequired casts. (and some changes >>> in 724, >>> 740 and 789 while I was there) > > I should point out that I had previously mentioned the casting in > unmaskNull but that Remi had disagreed [1]. I was content to let > Remi's recommendation stand but since Mike raised it again, and Kurchi > agreed, I guess that Remi has been outvoted while I distracted him by > discussing generic reification. :-) > > Anyway I think this latest webrev is fine. > > s'marks > > [1] > http://mail.openjdk.java.net/pipermail/core-libs-dev/2012-April/009755.html I'm too busy to prepare my talk to devoxx france, so you can push any patch you want. Or more seriously, I will not be the man known to have written a long mail to explain why a cast should be in the callers and not in the callee. so thumb up, for me. R?mi From joe.darcy at oracle.com Tue Apr 17 02:10:11 2012 From: joe.darcy at oracle.com (Joseph Darcy) Date: Mon, 16 Apr 2012 19:10:11 -0700 Subject: Reviewer needed: 6282196 There should be Math.mod(number, modulo) methods In-Reply-To: <4F8C8A6B.8020606@oracle.com> References: <4F44FA81.9020108@oracle.com> <4F54C1E7.2050802@oracle.com> <4F8C8A6B.8020606@oracle.com> Message-ID: <4F8CD103.6030102@oracle.com> Hi Roger, In a case like this where the Math and StrictMath versiosn of a method have exactly the same behavior defined, I strongly suggest having the Math version of the test invoke tests for both Math and StrictMath siblings of a method. In other words, have a single test/java/lang/Math/DivModTests.java file testing both Math and StrictMath methods; this should ease maintenance of the tests going forward. Otherwise the code looks fine. However, I suggest adding a short paragraph to discuss the div & mod methods to explain how div and mod are related (mod is paired to div so that (a div b) * b + (a mod b) = a) and floor div and floor mod how they differ from the built-in / and % operators. Thanks, -Joe On 4/16/2012 2:08 PM, Roger Riggs wrote: > Hi, > > I've corrected a number of issues raised with javadoc in java.lang.Math > and java.lang.StrictMath. The updated webrev is: > http://cr.openjdk.java.net/~rriggs/6282196.2/ > > Please review. > > Thanks, Roger > > > On 03/05/2012 08:38 AM, Roger Riggs wrote: >> CR 6282196 There should be Math.mod(number, modulo) methods >> http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6282196 >> >> Requests that floor and modulus methods be provided for primitive types. >> Floor division is pretty straight-forward, rounding toward minus >> infinity. >> For modulus of int and long, the sign and range follow the exiting >> floor method >> in java.util.Math and satisfy the relation that mod(x, y) = (x - >> floorDiv(x, y) * y). >> From david.holmes at oracle.com Tue Apr 17 02:48:03 2012 From: david.holmes at oracle.com (David Holmes) Date: Tue, 17 Apr 2012 12:48:03 +1000 Subject: Replace the static error string in ZIP_Put_In_Cache0 with on stack memory In-Reply-To: References: <4F82B361.4080806@oracle.com> <4F83EB02.7050708@oracle.com> <4F85E4E1.3040906@oracle.com> <4F869143.1060101@oracle.com> Message-ID: <4F8CD9E3.4040401@oracle.com> Certainly the string management in this code is a bit of a mess, but I don't understand why the strdup's of string literals have been introduced. Even if for a good reason this seems to imply that an allocation failure will result in a NULL where before the caller was guaranteed never to get NULL in the error case, and that could lead to SEGV. Also with the change to avoid changes on the hotspot side, the actual cause of the open failure has been lost in ZIP_Open David On 13/04/2012 1:14 AM, Sean Chou wrote: > Hi Alan, > > I made a new webrev, added the comments and the 2 other modification. > It's now : http://cr.openjdk.java.net/~zhouyx/7159982/webrev.02/ > > On Thu, Apr 12, 2012 at 4:24 PM, Alan Batemanwrote: > >> On 12/04/2012 06:40, Sean Chou wrote: >> >>> Hi Alan, >>> >>> Many thanks. >>> >>> I updated the patch, ZIP_Open frees the error message and set "Zip >>> file open error". >>> >>> The new webrev is : http://cr.openjdk.java.net/~** >>> zhouyx/7159982/webrev.01/< >>> http://cr.openjdk.java.net/%**7Ezhouyx/7159982/webrev.01/ >>>> >>> >>> >>> Please take a look once more. >>> >> This looks much better. I think we'll need to add comments to the ZIP_* >> functions so that it's clear to anyone using them when they need to free >> the error message and then they don't. >> >> One implementation nit at zip_util.c L876 where it should check if pmsg is >> NULL and I think the tests should be reversed so that its: >> >> if (file != NULL&& pmsg != NULL&& *pmsg != NULL) { ... } >> >> One other minor nit is L875 where there is a space on either side of the >> "*", best to keep the style consistent. >> >> -Alan. >> > > > From david.holmes at oracle.com Tue Apr 17 03:09:50 2012 From: david.holmes at oracle.com (David Holmes) Date: Tue, 17 Apr 2012 13:09:50 +1000 Subject: review request: 4244896: (process) Provide System.getPid(), System.killProcess(String pid) In-Reply-To: <4F861847.5080308@oracle.com> References: <4F861847.5080308@oracle.com> Message-ID: <4F8CDEFE.4010604@oracle.com> Hi Rob, Adding new methods to Process definitely requires providing defaults. This aspect should be covered in CCC request. David On 12/04/2012 9:48 AM, Rob McKenna wrote: > Hi folks, > > I'm hoping for some feedback on the above. Webrev: > > http://cr.openjdk.java.net/~robm/4244896/webrev.00/ > > This bug adds two abstract methods to Process.java with the intention of: > > 1) providing a facility to implement a destroyForcibly method. In > practical terms this means provide a method that will send a SIGKILL to > the subprocess in *nix environments as opposed to the SIGTERM that is > currently being sent. (Windows' destroy() method effectively behaves > like this already) > > 2) providing a facility to check whether the subprocess is still alive. > > As per the bug report the toString/pid work has been left to be > completed separately. > > Notes: > > a) It has been pointed out to me that the addition of abstract methods > to java.lang.Process should be discussed, particularly as to whether > default methods should be provided. > > b) In src/windows/native/java/lang/ProcessImpl_md.c I chose to use > WaitForSingleObject on the off chance that a process may choose to > return STILL_ACTIVE as an error code. > > Thanks! > > -Rob > From xueming.shen at oracle.com Tue Apr 17 05:14:05 2012 From: xueming.shen at oracle.com (Xueming Shen) Date: Mon, 16 Apr 2012 22:14:05 -0700 Subject: 6341887: Inflater can't handle ByteBuffer - first webrev In-Reply-To: <4F8C8455.1050601@s1998.tu-chemnitz.de> References: <4F893529.4060309@s1998.tu-chemnitz.de> <4F8C8455.1050601@s1998.tu-chemnitz.de> Message-ID: <4F8CFC1D.3020200@oracle.com> Hi Martin, yes, I will be the sponsor of this rfe. -Sherman On 4/16/2012 1:43 PM, Martin Kirst wrote: > Am 14.04.2012 10:28, schrieb Martin Kirst: >> Hi, >> [...] >> WebRev here: >> http://dl.dropbox.com/u/52514330/6341887/webrev.00/index.html >> >> Feedback is welcome. > Thanks for all your feedback. > > Today, I've send my signed OCA to oracle-ca_us(at)oracle.com. > > > From all your feedback I've caught the following tasks for me: > * BB.position() should be set not to limit, > but number of (in|de)flated bytes insteand > * the if-clause for FLUSH options can be shortened > and should be kept as integers (not enums) > * the (bbuffer==null) guarding if statement is superfluous > * creating test cases > * ArrayIndexOutOfBounds check should be an assert > * last if-else-else-clause for not direct ByteBuffer.get() is incorrect > * consider refactoring native parts considering DRY > * because of the missing #setInput(ByteBuffer) methods, > I will create MappedBuffer(De|In)flater (my proposal for class name) > which will be specialized classes from Abstract(In/Deflater) > Thus the specialized implementations hopefully will be more clear. > > And last but not least, > it seems that Sherman will be my sponsor, will he? > > I was pleased to read your valuable feedback > and being (somehow) part of the team :-) > > Regards > Martin > > From youdwei at linux.vnet.ibm.com Tue Apr 17 07:33:16 2012 From: youdwei at linux.vnet.ibm.com (Deven You) Date: Tue, 17 Apr 2012 15:33:16 +0800 Subject: sun.management.Agent: the properties.putAll API may fail with ConcurrentModifcationException on multi-thread scenario In-Reply-To: <4F863945.7020701@oracle.com> References: <4F853485.7020607@linux.vnet.ibm.com> <4F863945.7020701@oracle.com> Message-ID: <4F8D1CBC.5040205@linux.vnet.ibm.com> On 04/12/2012 10:09 AM, Mandy Chung wrote: > On 4/11/2012 12:36 AM, Deven You wrote: >> Hi core-libs-devs, >> >> I am not sure if sun.management.Agent belongs to jmx-dev mailing >> list, if so please anyone tell me. >> > > serviceability-dev (cc'ed) is the mailing list for this patch. > >> This issue is that the >> sun.management.Agent.loadManagementProperties() will invoke >> properties.putAll which will throw ConcurrentModifcationException if >> there are other threads which modify the properties concurrently. >> >> I have made a patch[1] which synchronize the sysProps so that putAll >> can work on multi-thread scenario. The test case is also available in >> [1]. >> > > I think this could still run into CME. System Properties is not a > synchronized map and the setter methods (System.setProperty or > Properties.put method) doesn't synchronize on the Properties object. > > Mandy > >> Thanks a lot! >> >> [1] http://cr.openjdk.java.net/~littlee/OJDK-256/webrev.00 >> >> > Hi Mandy, I didn't catch you. Do you mean there are other setter methods of System properties in the Agent.java which are not synchronized? Thanks a lot! -- Best Regards, Deven From Alan.Bateman at oracle.com Tue Apr 17 09:00:23 2012 From: Alan.Bateman at oracle.com (Alan Bateman) Date: Tue, 17 Apr 2012 10:00:23 +0100 Subject: Code Review Request - Bug #6948101 & 7142596: RMI JPRT tests are failing In-Reply-To: <4F8C6645.3030708@oracle.com> References: <4F88BA9F.2000600@oracle.com> <4F89A1F5.6090308@oracle.com> <4F8C6645.3030708@oracle.com> Message-ID: <4F8D3127.2060805@oracle.com> On 16/04/2012 19:34, Darryl Mocek wrote: > Ah, yes, with -agentvm specified, many tests fail. I'll have to add > java/rmi and sun/rmi back to the list of tests which must be run in > othervm mode and I should probably add back othervm to the tests I > removed it from. At least with the port conflict fix, we can run the > tests concurrently and they will run much faster. Yes, it's a good first step and I look forward to getting much better through-put of these tests. >> >> I see the logic in TestLibrary to choose a random port and I'm just >> wondered if you considered doing LocaleRegistry.createRegistry(0) so >> that the registry binds to an ephemeral port. It would mean that >> TestLibrary would need to get to the transport endpoint and port but >> it would avoid having to try multiple ports. > I would have like to use LocaleRegistry.createRegistry(0), but I don't > see a way to get the port number once the registry is created, which > is required. I originally tried creating a TestLocaleRegistry which > extends LocateRegistry, with a getPort() method, but this didn't work > either. I don't think there is an API to get the endpoint (Peter Jones, any ideas?) so it may require TestLibrary to use reflection or sun.* code to get it. Another sleazy suggestion is that it's in toString output and TestLibrary would provide method to get the port that wouldn't require all the tests to depend on it. -Alan From Alan.Bateman at oracle.com Tue Apr 17 09:50:10 2012 From: Alan.Bateman at oracle.com (Alan Bateman) Date: Tue, 17 Apr 2012 10:50:10 +0100 Subject: Review for 7157656 (zipfs) SeekableByteChannel to entry in zip file... In-Reply-To: <903CA3B7-35C5-49A2-8D72-58C87ABC394D@oracle.com> References: <903CA3B7-35C5-49A2-8D72-58C87ABC394D@oracle.com> Message-ID: <4F8D3CD2.5060704@oracle.com> On 16/04/2012 17:55, Paul Sandoz wrote: > Hi, > > I ain't got permission to publish webrevs yet. So attached is a patch produced by hg export on the jdk tree for: > > 7157656 (zipfs) SeekableByteChannel to entry in zip file always reports its position as 0 > > Paul. Sherman wrote this zip provider and I assume will want to review this so I'll leave it to him. One thing I notice, and nothing to do with your patch, is that the position(long) method is missing an implementation, it shouldn't throw UOE. Also for the append case it looks like read throws UOE whereas it should throw NonReadableChannelException. -Alan. From paul.sandoz at oracle.com Tue Apr 17 10:28:51 2012 From: paul.sandoz at oracle.com (Paul Sandoz) Date: Tue, 17 Apr 2012 12:28:51 +0200 Subject: Review for 7157656 (zipfs) SeekableByteChannel to entry in zip file... In-Reply-To: <4F8D3CD2.5060704@oracle.com> References: <903CA3B7-35C5-49A2-8D72-58C87ABC394D@oracle.com> <4F8D3CD2.5060704@oracle.com> Message-ID: On Apr 17, 2012, at 11:50 AM, Alan Bateman wrote: > On 16/04/2012 17:55, Paul Sandoz wrote: >> Hi, >> >> I ain't got permission to publish webrevs yet. So attached is a patch produced by hg export on the jdk tree for: >> >> 7157656 (zipfs) SeekableByteChannel to entry in zip file always reports its position as 0 >> >> Paul. > Sherman wrote this zip provider and I assume will want to review this so I'll leave it to him. > OK. Managed to push a webrev: http://cr.openjdk.java.net/~psandoz/7157656/webrev.0/ proxy issues... > One thing I notice, and nothing to do with your patch, is that the position(long) method is missing an implementation, it shouldn't throw UOE. There is a comment: // sbc.position(pos) is not supported in current version in the test code. I put test checks in place, mainly to be consistent, rather than any foresight on my part. > Also for the append case it looks like read throws UOE whereas it should throw NonReadableChannelException. > OK. What about the methods: position & truncate? I will let Sherman comment as appropriate. Sherman, i can fix if you like. Paul. From Alan.Bateman at oracle.com Tue Apr 17 10:51:27 2012 From: Alan.Bateman at oracle.com (Alan Bateman) Date: Tue, 17 Apr 2012 11:51:27 +0100 Subject: Review for 7157656 (zipfs) SeekableByteChannel to entry in zip file... In-Reply-To: References: <903CA3B7-35C5-49A2-8D72-58C87ABC394D@oracle.com> <4F8D3CD2.5060704@oracle.com> Message-ID: <4F8D4B2F.2040000@oracle.com> "On 17/04/2012 11:28, Paul Sandoz wrote: > : > >> One thing I notice, and nothing to do with your patch, is that the position(long) method is missing an implementation, it shouldn't throw UOE. > There is a comment: > // sbc.position(pos) is not supported in current version > in the test code. I put test checks in place, mainly to be consistent, rather than any foresight on my part. position(long) needs an implementation, except when the file is opened for append. The append case is special, from the javadoc: "Setting the channel's position is not recommended when connected to an entity, typically a file, that is opened with the |APPEND| option. When opened for append, the position is first advanced to the end before writing." truncate(long) also includes a warning: " An implementation of this interface may prohibit truncation when connected to an entity, typically a file, opened with the |APPEND| option." Unfortunately we don't clearly specify what "prohibit truncation" means (in terms of exceptions, but an IOException is appropriate). -Alan. From dmitry.degrave at oracle.com Tue Apr 17 12:15:04 2012 From: dmitry.degrave at oracle.com (dmitry.degrave at oracle.com) Date: Tue, 17 Apr 2012 12:15:04 +0000 Subject: hg: jdk8/tl/jdk: 7015981: java.net.HttpCookie.domainMatches returns false if domain doesn't start with a dot Message-ID: <20120417121529.1083247118@hg.openjdk.java.net> Changeset: d09775066f8a Author: dmeetry Date: 2012-04-17 16:13 +0400 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/d09775066f8a 7015981: java.net.HttpCookie.domainMatches returns false if domain doesn't start with a dot Reviewed-by: chegar ! src/share/classes/java/net/HttpCookie.java From rob.mckenna at oracle.com Tue Apr 17 14:16:18 2012 From: rob.mckenna at oracle.com (rob.mckenna at oracle.com) Date: Tue, 17 Apr 2012 14:16:18 +0000 Subject: hg: jdk8/tl/jdk: 7118373: (se) Potential leak file descriptor when deregistrating at around the same time as an async close Message-ID: <20120417141628.72C334711A@hg.openjdk.java.net> Changeset: b700f85a8f29 Author: robm Date: 2012-04-17 07:14 -0700 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/b700f85a8f29 7118373: (se) Potential leak file descriptor when deregistrating at around the same time as an async close Reviewed-by: alanb ! src/share/classes/sun/nio/ch/DatagramChannelImpl.java ! src/share/classes/sun/nio/ch/ServerSocketChannelImpl.java ! src/share/classes/sun/nio/ch/SocketChannelImpl.java ! src/solaris/classes/sun/nio/ch/SinkChannelImpl.java ! src/solaris/classes/sun/nio/ch/SourceChannelImpl.java From alan.bateman at oracle.com Tue Apr 17 14:46:31 2012 From: alan.bateman at oracle.com (alan.bateman at oracle.com) Date: Tue, 17 Apr 2012 14:46:31 +0000 Subject: hg: jdk8/tl/jdk: 7116200: (cs) test/java/nio/charset/coders/StreamTimeout.java fails with "Address already in use" Message-ID: <20120417144641.DE3A84711C@hg.openjdk.java.net> Changeset: 9c1d7507ca37 Author: alanb Date: 2012-04-17 15:46 +0100 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/9c1d7507ca37 7116200: (cs) test/java/nio/charset/coders/StreamTimeout.java fails with "Address already in use" Reviewed-by: alanb, chegar Contributed-by: jim.gish at oracle.com, forax at univ-mlv.fr ! test/java/nio/charset/coders/StreamTimeout.java From Roger.Riggs at oracle.com Tue Apr 17 14:50:31 2012 From: Roger.Riggs at oracle.com (Roger Riggs) Date: Tue, 17 Apr 2012 10:50:31 -0400 Subject: Reviewer needed: 6282196 There should be Math.mod(number, modulo) methods In-Reply-To: References: <4F44FA81.9020108@oracle.com> <4F54C1E7.2050802@oracle.com> <4F8C8A6B.8020606@oracle.com> Message-ID: <4F8D8337.50509@oracle.com> I'm not sure have all the history around the Math vs StrictMath distinction. There are many cross references between Math and StrictMath for common functions, for example, ulp, getExponent, copySign, etc. The distinction is clearer for floating point operations than for int/log computations. Roger On 04/16/2012 05:27 PM, Alex Lam S.L. wrote: > Hi there, > > Sorry if this has been asked before, but I am curious as to why the > newer methods in StrictMath (including addExact etc.) are now > delegating to methods in Math. > > Looking at the other static methods, they seem to be going in the > opposite direction, i.e. Math methods calling equivalent methods in > StrictMath. > > > Thanks, > Alex. > > > > On Mon, Apr 16, 2012 at 10:08 PM, Roger Riggs wrote: >> Hi, >> >> I've corrected a number of issues raised with javadoc in java.lang.Math >> and java.lang.StrictMath. The updated webrev is: >> http://cr.openjdk.java.net/~rriggs/6282196.2/ >> >> Please review. >> >> Thanks, Roger >> >> >> >> On 03/05/2012 08:38 AM, Roger Riggs wrote: >>> CR 6282196 There should be Math.mod(number, modulo) methods >>> http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6282196 >>> >>> Requests that floor and modulus methods be provided for primitive types. >>> Floor division is pretty straight-forward, rounding toward minus infinity. >>> For modulus of int and long, the sign and range follow the exiting floor >>> method >>> in java.util.Math and satisfy the relation that mod(x, y) = (x - >>> floorDiv(x, y) * y). >>> From rob.mckenna at oracle.com Tue Apr 17 14:56:30 2012 From: rob.mckenna at oracle.com (Rob McKenna) Date: Tue, 17 Apr 2012 15:56:30 +0100 Subject: review request: 4244896: (process) Provide System.getPid(), System.killProcess(String pid) In-Reply-To: <4F869AD6.7010903@oracle.com> References: <4F861847.5080308@oracle.com> <4F869AD6.7010903@oracle.com> Message-ID: <4F8D849E.8090607@oracle.com> New webrev at: http://cr.openjdk.java.net/~robm/4244896/webrev.01/ Differences: - implemented Process.waitFor(long timeout). I figured I'd throw it in and let you decide if you want to keep it / replace isAlive. - implemented defaults in Process.java - destroyForcibly now returns the Process object - Updated documentation - Added @Override to all new overrides. - Fixed long line in UNIXProcess_md.c consistent with other functions in that file. - Replaced WaitForSingleObject with GetExitCodeProcess: given the concerns raised it seems to make more sense to leave users who return STILL_ACTIVE as an error code on their own. - Test updated to allow for proper execution of shell script. -Rob On 12/04/12 10:05, Alan Bateman wrote: > On 12/04/2012 00:48, Rob McKenna wrote: >> Hi folks, >> >> I'm hoping for some feedback on the above. Webrev: >> >> http://cr.openjdk.java.net/~robm/4244896/webrev.00/ > Thanks for taking this one on, a destroyForcibly is really useful to > have (destroy was always misleading given that that is was actually a > SIGTERM). The isAlive is also useful, another choice would be a > waitFor that takes a timeout. > > As this patch adds two abstract methods it means there will be a > source compatibility issue. Process has been in the platform since > JDK1.0 so it likely there are other implementation, perhaps mocked. > For destroyForcibly then a reasonable default could invoke the > existing destroy but this would need to be specified. A possible > default for isAlive is to invoke exitValue and mask the IAE when it > hasn't terminated. > > On the javadoc then destroyForcibly needs to specify the return value, > I think I missed this in the original patch that I gave you off-list. > Having it return the Process is very useful as it allows for method > invocation chaining, exitCode = p.destroyForcibly().waitFor(). I also > think destroyForcibly needs to set expectation that the process may > not terminate immediately (isAlive might still return true for a brief > period for example). > > The duplicate code in UNIXProcess.java.* is a reminder that we could > combine the common code into something like a private package > AbstractUNIXPorcess that would be extended by UNIXProcess, not for > this patch of course. > > Looks like there is inconsistent use of @Override, you've added it to > the isAlive implementation but not the others. > > Looks like UNIXProcess_md.c is straying beyond 80c so you might want > to move the force parameter to the next line. > > Overall I think the implementation looks okay but one thing to think > about is errors, WaitForSingleObject can fail with other errors, the > return from kill is not checked. > > I don't have time to study the test is detail just now but I suspect > invoking "./ProcessKillTest.sh" will need to change as the script will > be in test.src and may not have execute permission. Also I see tests > for specific exit codes which may be problematic (and will need to be > updated for MacOSX). For isAlive then it may be better to test it by > adding to existing tests. > > -Alan. > > From staffan.larsen at oracle.com Tue Apr 17 15:50:07 2012 From: staffan.larsen at oracle.com (staffan.larsen at oracle.com) Date: Tue, 17 Apr 2012 15:50:07 +0000 Subject: hg: jdk8/tl/jdk: 3 new changesets Message-ID: <20120417155037.159534711D@hg.openjdk.java.net> Changeset: 869f53f58692 Author: sla Date: 2012-04-17 06:45 +0200 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/869f53f58692 7147848: com.sun.management.UnixOperatingSystem uses hardcoded dummy values [macosx] Summary: Provide the missing implementation UnixOperatingSystem on Mac OS X Reviewed-by: dsamersoff, dcubed ! src/solaris/native/com/sun/management/MacosxOperatingSystem.c ! src/solaris/native/com/sun/management/UnixOperatingSystem_md.c ! test/com/sun/management/OperatingSystemMXBean/TestTotalSwap.sh Changeset: 4ce1333232c5 Author: sla Date: 2012-04-17 07:25 -0700 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/4ce1333232c5 Merge Changeset: 1d14903b32e8 Author: sla Date: 2012-04-17 08:49 -0700 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/1d14903b32e8 Merge From daniel.daugherty at oracle.com Tue Apr 17 16:03:22 2012 From: daniel.daugherty at oracle.com (daniel.daugherty at oracle.com) Date: Tue, 17 Apr 2012 16:03:22 +0000 Subject: hg: jdk8/tl/jdk: 7159320: change default ZIP_DEBUGINFO_FILES back to '1' after fix for 7133529 is available Message-ID: <20120417160332.D3FEE4711E@hg.openjdk.java.net> Changeset: cce6147632cf Author: dcubed Date: 2012-04-17 09:02 -0700 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/cce6147632cf 7159320: change default ZIP_DEBUGINFO_FILES back to '1' after fix for 7133529 is available Reviewed-by: ohair, jmelvin, sspitsyn ! make/common/Defs-linux.gmk ! make/common/Defs-solaris.gmk ! make/common/Defs-windows.gmk From paul.sandoz at oracle.com Tue Apr 17 17:02:23 2012 From: paul.sandoz at oracle.com (Paul Sandoz) Date: Tue, 17 Apr 2012 19:02:23 +0200 Subject: Codereview request 7067045: replaceAll("\u20ac", "$"); causses java.lang.StringIndexOutOfBoundsExceptio In-Reply-To: <3FE9CA49-84EC-40C2-91F6-F21744E76A5F@oracle.com> References: <4F87366F.3050708@oracle.com> <3FE9CA49-84EC-40C2-91F6-F21744E76A5F@oracle.com> Message-ID: <9159FBC2-E3C3-43F8-835A-37F21F18F924@oracle.com> Hi Sherman, Here is an example: http://cr.openjdk.java.net/~psandoz/errors-in-matcher/webrev.0/ I am not sure what, if any, are the JDK guidelines for stuffing information in exception messages. Paul. On Apr 16, 2012, at 10:24 AM, Paul Sandoz wrote: > Hi Sherman, > > IMHO it is worth spending a little time getting the exception messages a little more accurate. I have spent too many a time staring at such messages wondering what the heck is going on :-) > > e.g. > > Syntax error parsing replacement string: escaped literal character is missing at the end of the string. > > Syntax error parsing replacement string: group reference is missing at the end of the string. > > > Since i am proposing this i will send a patch. It will help me get familiar with the whole OpenJDK process. > > Pau;. > > On Apr 12, 2012, at 10:09 PM, Xueming Shen wrote: > >> Hi >> >> Please help review the change for 7067045. >> >> The change is to throw a more meaningful IAE instead of the StringIndexoutputOfBoundsException >> if backslash or $ is the last character in the replacement string. (as the API indicated, the backslash >> and $ character in String's regex replacement and Matcher class have special meanings, backslash >> is for literal character escape and the $ is the capturing group reference, which needs a group index). >> >> http://cr.openjdk.java.net/~sherman/7067045/webrev/ >> >> Thanks, >> -Sherman > From huizhe.wang at oracle.com Tue Apr 17 18:15:58 2012 From: huizhe.wang at oracle.com (huizhe.wang at oracle.com) Date: Tue, 17 Apr 2012 18:15:58 +0000 Subject: hg: jdk8/tl/jaxp: 7160380: Sync JDK8 with JAXP 1.4.5 Message-ID: <20120417181603.4A6C847125@hg.openjdk.java.net> Changeset: ceae213d9812 Author: joehw Date: 2012-04-17 11:17 -0700 URL: http://hg.openjdk.java.net/jdk8/tl/jaxp/rev/ceae213d9812 7160380: Sync JDK8 with JAXP 1.4.5 Summary: bring JDK8 up to date to what we have in 7u4 Reviewed-by: lancea, mullan + src/com/sun/org/apache/xalan/internal/XalanConstants.java ! src/com/sun/org/apache/xalan/internal/lib/ExsltDatetime.java ! src/com/sun/org/apache/xalan/internal/lib/ExsltMath.java ! src/com/sun/org/apache/xalan/internal/lib/Extensions.java - src/com/sun/org/apache/xalan/internal/lib/ObjectFactory.java - src/com/sun/org/apache/xalan/internal/lib/SecuritySupport.java - src/com/sun/org/apache/xalan/internal/lib/SecuritySupport12.java + src/com/sun/org/apache/xalan/internal/utils/ConfigurationError.java + src/com/sun/org/apache/xalan/internal/utils/FactoryImpl.java + src/com/sun/org/apache/xalan/internal/utils/ObjectFactory.java + src/com/sun/org/apache/xalan/internal/utils/SecuritySupport.java ! src/com/sun/org/apache/xalan/internal/xslt/EnvironmentCheck.java - src/com/sun/org/apache/xalan/internal/xslt/ObjectFactory.java ! src/com/sun/org/apache/xalan/internal/xslt/Process.java - src/com/sun/org/apache/xalan/internal/xslt/SecuritySupport.java - src/com/sun/org/apache/xalan/internal/xslt/SecuritySupport12.java ! src/com/sun/org/apache/xalan/internal/xsltc/Translet.java ! src/com/sun/org/apache/xalan/internal/xsltc/cmdline/Compile.java - src/com/sun/org/apache/xalan/internal/xsltc/cmdline/ObjectFactory.java - src/com/sun/org/apache/xalan/internal/xsltc/cmdline/SecuritySupport.java - src/com/sun/org/apache/xalan/internal/xsltc/cmdline/SecuritySupport12.java ! src/com/sun/org/apache/xalan/internal/xsltc/cmdline/Transform.java ! src/com/sun/org/apache/xalan/internal/xsltc/compiler/AbsoluteLocationPath.java ! src/com/sun/org/apache/xalan/internal/xsltc/compiler/AbsolutePathPattern.java ! src/com/sun/org/apache/xalan/internal/xsltc/compiler/AttributeSet.java ! src/com/sun/org/apache/xalan/internal/xsltc/compiler/Copy.java ! src/com/sun/org/apache/xalan/internal/xsltc/compiler/FilterExpr.java ! src/com/sun/org/apache/xalan/internal/xsltc/compiler/FilterParentPath.java ! src/com/sun/org/apache/xalan/internal/xsltc/compiler/FilteredAbsoluteLocationPath.java ! src/com/sun/org/apache/xalan/internal/xsltc/compiler/FunctionAvailableCall.java ! src/com/sun/org/apache/xalan/internal/xsltc/compiler/FunctionCall.java ! src/com/sun/org/apache/xalan/internal/xsltc/compiler/Key.java ! src/com/sun/org/apache/xalan/internal/xsltc/compiler/Message.java ! src/com/sun/org/apache/xalan/internal/xsltc/compiler/Mode.java ! src/com/sun/org/apache/xalan/internal/xsltc/compiler/Number.java - src/com/sun/org/apache/xalan/internal/xsltc/compiler/ObjectFactory.java ! src/com/sun/org/apache/xalan/internal/xsltc/compiler/ParameterRef.java ! src/com/sun/org/apache/xalan/internal/xsltc/compiler/ParentLocationPath.java ! src/com/sun/org/apache/xalan/internal/xsltc/compiler/ParentPattern.java ! src/com/sun/org/apache/xalan/internal/xsltc/compiler/Parser.java ! src/com/sun/org/apache/xalan/internal/xsltc/compiler/Predicate.java ! src/com/sun/org/apache/xalan/internal/xsltc/compiler/ProcessingInstruction.java - src/com/sun/org/apache/xalan/internal/xsltc/compiler/SecuritySupport.java - src/com/sun/org/apache/xalan/internal/xsltc/compiler/SecuritySupport12.java ! src/com/sun/org/apache/xalan/internal/xsltc/compiler/Sort.java ! src/com/sun/org/apache/xalan/internal/xsltc/compiler/Step.java ! src/com/sun/org/apache/xalan/internal/xsltc/compiler/StepPattern.java ! src/com/sun/org/apache/xalan/internal/xsltc/compiler/Stylesheet.java ! src/com/sun/org/apache/xalan/internal/xsltc/compiler/SymbolTable.java ! src/com/sun/org/apache/xalan/internal/xsltc/compiler/SyntaxTreeNode.java ! src/com/sun/org/apache/xalan/internal/xsltc/compiler/TestSeq.java ! src/com/sun/org/apache/xalan/internal/xsltc/compiler/Variable.java ! src/com/sun/org/apache/xalan/internal/xsltc/compiler/VariableBase.java ! src/com/sun/org/apache/xalan/internal/xsltc/compiler/VariableRef.java ! src/com/sun/org/apache/xalan/internal/xsltc/compiler/Whitespace.java ! src/com/sun/org/apache/xalan/internal/xsltc/compiler/XSLTC.java ! src/com/sun/org/apache/xalan/internal/xsltc/compiler/XslAttribute.java ! src/com/sun/org/apache/xalan/internal/xsltc/compiler/XslElement.java ! src/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ClassGenerator.java ! src/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages.java ! src/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMsg.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/util/InternalError.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/util/MarkerInstruction.java ! src/com/sun/org/apache/xalan/internal/xsltc/compiler/util/MethodGenerator.java - src/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ObjectFactory.java ! src/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ObjectType.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/util/OutlineableChunkEnd.java + src/com/sun/org/apache/xalan/internal/xsltc/compiler/util/OutlineableChunkStart.java ! src/com/sun/org/apache/xalan/internal/xsltc/compiler/util/RealType.java ! src/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ResultTreeType.java - src/com/sun/org/apache/xalan/internal/xsltc/compiler/util/SecuritySupport.java - src/com/sun/org/apache/xalan/internal/xsltc/compiler/util/SecuritySupport12.java + src/com/sun/org/apache/xalan/internal/xsltc/dom/ArrayNodeListIterator.java ! src/com/sun/org/apache/xalan/internal/xsltc/dom/DupFilterIterator.java ! src/com/sun/org/apache/xalan/internal/xsltc/dom/NodeSortRecord.java ! src/com/sun/org/apache/xalan/internal/xsltc/dom/NodeSortRecordFactory.java - src/com/sun/org/apache/xalan/internal/xsltc/dom/ObjectFactory.java - src/com/sun/org/apache/xalan/internal/xsltc/dom/SecuritySupport.java - src/com/sun/org/apache/xalan/internal/xsltc/dom/SecuritySupport12.java ! src/com/sun/org/apache/xalan/internal/xsltc/dom/XSLTCDTMManager.java ! src/com/sun/org/apache/xalan/internal/xsltc/runtime/AbstractTranslet.java ! src/com/sun/org/apache/xalan/internal/xsltc/runtime/BasisLibrary.java ! src/com/sun/org/apache/xalan/internal/xsltc/runtime/Hashtable.java + src/com/sun/org/apache/xalan/internal/xsltc/runtime/InternalRuntimeError.java - src/com/sun/org/apache/xalan/internal/xsltc/runtime/ObjectFactory.java - src/com/sun/org/apache/xalan/internal/xsltc/runtime/SecuritySupport.java - src/com/sun/org/apache/xalan/internal/xsltc/runtime/SecuritySupport12.java ! src/com/sun/org/apache/xalan/internal/xsltc/runtime/output/TransletOutputHandlerFactory.java - src/com/sun/org/apache/xalan/internal/xsltc/trax/ObjectFactory.java ! src/com/sun/org/apache/xalan/internal/xsltc/trax/SAX2DOM.java - src/com/sun/org/apache/xalan/internal/xsltc/trax/SecuritySupport.java - src/com/sun/org/apache/xalan/internal/xsltc/trax/SecuritySupport12.java ! src/com/sun/org/apache/xalan/internal/xsltc/trax/SmartTransformerFactoryImpl.java ! src/com/sun/org/apache/xalan/internal/xsltc/trax/TemplatesHandlerImpl.java ! src/com/sun/org/apache/xalan/internal/xsltc/trax/TemplatesImpl.java ! src/com/sun/org/apache/xalan/internal/xsltc/trax/TrAXFilter.java ! src/com/sun/org/apache/xalan/internal/xsltc/trax/TransformerFactoryImpl.java ! src/com/sun/org/apache/xalan/internal/xsltc/trax/TransformerImpl.java ! src/com/sun/org/apache/xalan/internal/xsltc/trax/Util.java ! src/com/sun/org/apache/xerces/internal/dom/CoreDOMImplementationImpl.java ! src/com/sun/org/apache/xerces/internal/dom/CoreDocumentImpl.java ! src/com/sun/org/apache/xerces/internal/dom/DOMConfigurationImpl.java - src/com/sun/org/apache/xerces/internal/dom/ObjectFactory.java - src/com/sun/org/apache/xerces/internal/dom/SecuritySupport.java ! src/com/sun/org/apache/xerces/internal/impl/Constants.java ! src/com/sun/org/apache/xerces/internal/impl/XMLDocumentFragmentScannerImpl.java ! src/com/sun/org/apache/xerces/internal/impl/XMLEntityManager.java ! src/com/sun/org/apache/xerces/internal/impl/XMLEntityScanner.java ! src/com/sun/org/apache/xerces/internal/impl/XMLStreamReaderImpl.java ! src/com/sun/org/apache/xerces/internal/impl/dv/DTDDVFactory.java - src/com/sun/org/apache/xerces/internal/impl/dv/ObjectFactory.java ! src/com/sun/org/apache/xerces/internal/impl/dv/SchemaDVFactory.java - src/com/sun/org/apache/xerces/internal/impl/dv/SecuritySupport.java ! src/com/sun/org/apache/xerces/internal/impl/msg/XMLSchemaMessages.properties ! src/com/sun/org/apache/xerces/internal/impl/xpath/regex/ParserForXMLSchema.java ! src/com/sun/org/apache/xerces/internal/impl/xs/XMLSchemaLoader.java ! src/com/sun/org/apache/xerces/internal/impl/xs/XMLSchemaValidator.java ! src/com/sun/org/apache/xerces/internal/impl/xs/identity/Field.java ! src/com/sun/org/apache/xerces/internal/jaxp/datatype/XMLGregorianCalendarImpl.java ! src/com/sun/org/apache/xerces/internal/jaxp/validation/DOMValidatorHelper.java ! src/com/sun/org/apache/xerces/internal/jaxp/validation/StAXValidatorHelper.java ! src/com/sun/org/apache/xerces/internal/jaxp/validation/StreamValidatorHelper.java ! src/com/sun/org/apache/xerces/internal/jaxp/validation/ValidatorHandlerImpl.java ! src/com/sun/org/apache/xerces/internal/jaxp/validation/XMLSchemaFactory.java ! src/com/sun/org/apache/xerces/internal/parsers/AbstractDOMParser.java ! src/com/sun/org/apache/xerces/internal/parsers/DOMParser.java ! src/com/sun/org/apache/xerces/internal/parsers/DOMParserImpl.java - src/com/sun/org/apache/xerces/internal/parsers/ObjectFactory.java ! src/com/sun/org/apache/xerces/internal/parsers/SAXParser.java - src/com/sun/org/apache/xerces/internal/parsers/SecuritySupport.java ! src/com/sun/org/apache/xerces/internal/parsers/XMLDocumentParser.java ! src/com/sun/org/apache/xerces/internal/parsers/XMLGrammarParser.java ! src/com/sun/org/apache/xerces/internal/parsers/XMLGrammarPreparser.java ! src/com/sun/org/apache/xerces/internal/util/ParserConfigurationSettings.java + src/com/sun/org/apache/xerces/internal/utils/ConfigurationError.java + src/com/sun/org/apache/xerces/internal/utils/ObjectFactory.java + src/com/sun/org/apache/xerces/internal/utils/SecuritySupport.java ! src/com/sun/org/apache/xerces/internal/xinclude/XIncludeHandler.java ! src/com/sun/org/apache/xml/internal/dtm/DTMManager.java - src/com/sun/org/apache/xml/internal/dtm/ObjectFactory.java - src/com/sun/org/apache/xml/internal/dtm/SecuritySupport.java - src/com/sun/org/apache/xml/internal/dtm/SecuritySupport12.java ! src/com/sun/org/apache/xml/internal/dtm/ref/DTMDefaultBase.java ! src/com/sun/org/apache/xml/internal/dtm/ref/DTMManagerDefault.java ! src/com/sun/org/apache/xml/internal/dtm/ref/IncrementalSAXSource_Xerces.java - src/com/sun/org/apache/xml/internal/dtm/ref/ObjectFactory.java - src/com/sun/org/apache/xml/internal/dtm/ref/SecuritySupport.java - src/com/sun/org/apache/xml/internal/dtm/ref/SecuritySupport12.java ! src/com/sun/org/apache/xml/internal/dtm/ref/dom2dtm/DOM2DTM.java ! src/com/sun/org/apache/xml/internal/resolver/Catalog.java ! src/com/sun/org/apache/xml/internal/resolver/CatalogManager.java ! src/com/sun/org/apache/xml/internal/resolver/Resolver.java ! src/com/sun/org/apache/xml/internal/resolver/tools/CatalogResolver.java ! src/com/sun/org/apache/xml/internal/resolver/tools/ResolvingParser.java ! src/com/sun/org/apache/xml/internal/resolver/tools/ResolvingXMLFilter.java ! src/com/sun/org/apache/xml/internal/resolver/tools/ResolvingXMLReader.java ! src/com/sun/org/apache/xml/internal/serialize/SerializerFactory.java ! src/com/sun/org/apache/xml/internal/serializer/CharInfo.java ! src/com/sun/org/apache/xml/internal/serializer/EmptySerializer.java ! src/com/sun/org/apache/xml/internal/serializer/Encodings.java - src/com/sun/org/apache/xml/internal/serializer/ObjectFactory.java ! src/com/sun/org/apache/xml/internal/serializer/OutputPropertiesFactory.java - src/com/sun/org/apache/xml/internal/serializer/SecuritySupport.java - src/com/sun/org/apache/xml/internal/serializer/SecuritySupport12.java ! src/com/sun/org/apache/xml/internal/serializer/SerializationHandler.java ! src/com/sun/org/apache/xml/internal/serializer/SerializerBase.java ! src/com/sun/org/apache/xml/internal/serializer/SerializerFactory.java ! src/com/sun/org/apache/xml/internal/serializer/ToHTMLSAXHandler.java ! src/com/sun/org/apache/xml/internal/serializer/ToHTMLStream.java ! src/com/sun/org/apache/xml/internal/serializer/ToStream.java ! src/com/sun/org/apache/xml/internal/serializer/ToXMLSAXHandler.java ! src/com/sun/org/apache/xml/internal/serializer/ToXMLStream.java ! src/com/sun/org/apache/xml/internal/serializer/WriterToUTF8Buffered.java ! src/com/sun/org/apache/xml/internal/serializer/utils/URI.java - src/com/sun/org/apache/xml/internal/utils/ObjectFactory.java ! src/com/sun/org/apache/xml/internal/utils/ObjectPool.java - src/com/sun/org/apache/xml/internal/utils/SecuritySupport.java - src/com/sun/org/apache/xml/internal/utils/SecuritySupport12.java ! src/com/sun/org/apache/xml/internal/utils/TreeWalker.java ! src/com/sun/org/apache/xml/internal/utils/URI.java ! src/com/sun/org/apache/xml/internal/utils/XMLReaderManager.java ! src/com/sun/org/apache/xml/internal/utils/XMLString.java ! src/com/sun/org/apache/xml/internal/utils/XMLStringDefault.java ! src/com/sun/org/apache/xpath/internal/XPathContext.java ! src/com/sun/org/apache/xpath/internal/axes/AxesWalker.java ! src/com/sun/org/apache/xpath/internal/axes/BasicTestIterator.java ! src/com/sun/org/apache/xpath/internal/axes/DescendantIterator.java ! src/com/sun/org/apache/xpath/internal/axes/IteratorPool.java ! src/com/sun/org/apache/xpath/internal/axes/MatchPatternIterator.java ! src/com/sun/org/apache/xpath/internal/axes/OneStepIterator.java ! src/com/sun/org/apache/xpath/internal/axes/OneStepIteratorForward.java ! src/com/sun/org/apache/xpath/internal/axes/UnionPathIterator.java ! src/com/sun/org/apache/xpath/internal/axes/WalkerFactory.java ! src/com/sun/org/apache/xpath/internal/axes/WalkingIterator.java ! src/com/sun/org/apache/xpath/internal/compiler/FuncLoader.java - src/com/sun/org/apache/xpath/internal/compiler/ObjectFactory.java ! src/com/sun/org/apache/xpath/internal/compiler/OpMap.java - src/com/sun/org/apache/xpath/internal/compiler/SecuritySupport.java - src/com/sun/org/apache/xpath/internal/compiler/SecuritySupport12.java ! src/com/sun/org/apache/xpath/internal/functions/FuncSystemProperty.java - src/com/sun/org/apache/xpath/internal/functions/ObjectFactory.java - src/com/sun/org/apache/xpath/internal/functions/SecuritySupport.java - src/com/sun/org/apache/xpath/internal/functions/SecuritySupport12.java ! src/com/sun/org/apache/xpath/internal/jaxp/XPathExpressionImpl.java ! src/com/sun/org/apache/xpath/internal/jaxp/XPathFactoryImpl.java ! src/com/sun/org/apache/xpath/internal/jaxp/XPathImpl.java ! src/com/sun/org/apache/xpath/internal/objects/XString.java ! src/com/sun/org/apache/xpath/internal/objects/XStringForFSB.java ! src/com/sun/org/apache/xpath/internal/patterns/StepPattern.java ! src/com/sun/xml/internal/stream/XMLEntityStorage.java ! src/com/sun/xml/internal/stream/writers/XMLStreamWriterImpl.java ! src/javax/xml/datatype/FactoryFinder.java ! src/javax/xml/parsers/FactoryFinder.java ! src/javax/xml/stream/FactoryFinder.java ! src/javax/xml/transform/FactoryFinder.java ! src/javax/xml/validation/SchemaFactoryFinder.java ! src/javax/xml/xpath/XPathFactoryFinder.java From huizhe.wang at oracle.com Tue Apr 17 18:22:27 2012 From: huizhe.wang at oracle.com (huizhe.wang at oracle.com) Date: Tue, 17 Apr 2012 18:22:27 +0000 Subject: hg: jdk8/tl/jdk: 7160380: Sync JDK8 with JAXP 1.4.5 Message-ID: <20120417182254.5A3AF47126@hg.openjdk.java.net> Changeset: 6cf68360cfaf Author: joehw Date: 2012-04-17 11:21 -0700 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/6cf68360cfaf 7160380: Sync JDK8 with JAXP 1.4.5 Summary: bring JDK8 up to date to what we have in 7u4 Reviewed-by: lancea, mullan ! src/share/lib/security/java.security ! src/share/lib/security/java.security-macosx ! src/share/lib/security/java.security-solaris ! src/share/lib/security/java.security-windows + test/java/lang/SecurityManager/CheckPackageAccess.java From kurchi.subhra.hazra at oracle.com Tue Apr 17 19:01:26 2012 From: kurchi.subhra.hazra at oracle.com (kurchi.subhra.hazra at oracle.com) Date: Tue, 17 Apr 2012 19:01:26 +0000 Subject: hg: jdk8/tl/jdk: 7152856: TEST_BUG: sun/net/www/protocol/jar/B4957695.java failing on Windows Message-ID: <20120417190137.5EA1A47127@hg.openjdk.java.net> Changeset: 31c15e2f51ba Author: khazra Date: 2012-04-17 11:59 -0700 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/31c15e2f51ba 7152856: TEST_BUG: sun/net/www/protocol/jar/B4957695.java failing on Windows Summary: Remove usage of HTTP Server at test/sun/net/www/httptest Reviewed-by: chegar, alanb ! test/sun/net/www/protocol/jar/B4957695.java From kurchi.subhra.hazra at oracle.com Tue Apr 17 19:22:43 2012 From: kurchi.subhra.hazra at oracle.com (kurchi.subhra.hazra at oracle.com) Date: Tue, 17 Apr 2012 19:22:43 +0000 Subject: hg: jdk8/tl/jdk: 7157893: Warnings Cleanup in java.util.* Message-ID: <20120417192253.A08ED47128@hg.openjdk.java.net> Changeset: 1757f049e8c0 Author: khazra Date: 2012-04-17 12:21 -0700 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/1757f049e8c0 7157893: Warnings Cleanup in java.util.* Summary: Minor code changes to cleanup warnings in java.util.* Reviewed-by: mduigou, naoto, smarks Contributed-by: Remi Forax ! src/share/classes/java/util/AbstractCollection.java ! src/share/classes/java/util/AbstractList.java ! src/share/classes/java/util/AbstractMap.java ! src/share/classes/java/util/AbstractSet.java ! src/share/classes/java/util/ArrayDeque.java ! src/share/classes/java/util/ArrayList.java ! src/share/classes/java/util/Arrays.java ! src/share/classes/java/util/Calendar.java ! src/share/classes/java/util/Collections.java ! src/share/classes/java/util/ComparableTimSort.java ! src/share/classes/java/util/Currency.java ! src/share/classes/java/util/EnumMap.java ! src/share/classes/java/util/EnumSet.java ! src/share/classes/java/util/HashMap.java ! src/share/classes/java/util/HashSet.java ! src/share/classes/java/util/Hashtable.java ! src/share/classes/java/util/IdentityHashMap.java ! src/share/classes/java/util/IllegalFormatConversionException.java ! src/share/classes/java/util/JumboEnumSet.java ! src/share/classes/java/util/LinkedHashMap.java ! src/share/classes/java/util/Observable.java ! src/share/classes/java/util/PriorityQueue.java ! src/share/classes/java/util/Properties.java ! src/share/classes/java/util/PropertyPermission.java ! src/share/classes/java/util/RegularEnumSet.java ! src/share/classes/java/util/ResourceBundle.java ! src/share/classes/java/util/ServiceLoader.java ! src/share/classes/java/util/TimeZone.java ! src/share/classes/java/util/TreeMap.java ! src/share/classes/java/util/TreeSet.java ! src/share/classes/java/util/WeakHashMap.java From xueming.shen at oracle.com Tue Apr 17 19:35:16 2012 From: xueming.shen at oracle.com (Xueming Shen) Date: Tue, 17 Apr 2012 12:35:16 -0700 Subject: Codereview request 7067045: replaceAll("\u20ac", "$"); causses java.lang.StringIndexOutOfBoundsExceptio In-Reply-To: <9159FBC2-E3C3-43F8-835A-37F21F18F924@oracle.com> References: <4F87366F.3050708@oracle.com> <3FE9CA49-84EC-40C2-91F6-F21744E76A5F@oracle.com> <9159FBC2-E3C3-43F8-835A-37F21F18F924@oracle.com> Message-ID: <4F8DC5F4.1010303@oracle.com> Hi Paul, I'm fine with the more detailed the exception messages. Though personally I don't see the necessity of using String.format(...) for those String and integer arguments, a simple concatenation might be good enough here. Are you interested to start from filing a new bug on this issue and then go through the whole process to update these exception message? Thanks! -Sherman On 04/17/2012 10:02 AM, Paul Sandoz wrote: > Hi Sherman, > > Here is an example: > > http://cr.openjdk.java.net/~psandoz/errors-in-matcher/webrev.0/ > > > I am not sure what, if any, are the JDK guidelines for stuffing > information in exception messages. > > Paul. > > On Apr 16, 2012, at 10:24 AM, Paul Sandoz wrote: > >> Hi Sherman, >> >> IMHO it is worth spending a little time getting the exception >> messages a little more accurate. I have spent too many a time staring >> at such messages wondering what the heck is going on :-) >> >> e.g. >> >> Syntax error parsing replacement string: escaped literal character is >> missing at the end of the string. >> >> Syntax error parsing replacement string: group reference is missing >> at the end of the string. >> >> >> Since i am proposing this i will send a patch. It will help me get >> familiar with the whole OpenJDK process. >> >> Pau;. >> >> On Apr 12, 2012, at 10:09 PM, Xueming Shen wrote: >> >>> Hi >>> >>> Please help review the change for 7067045. >>> >>> The change is to throw a more meaningful IAE instead of the >>> StringIndexoutputOfBoundsException >>> if backslash or $ is the last character in the replacement string. >>> (as the API indicated, the backslash >>> and $ character in String's regex replacement and Matcher class have >>> special meanings, backslash >>> is for literal character escape and the $ is the capturing group >>> reference, which needs a group index). >>> >>> http://cr.openjdk.java.net/~sherman/7067045/webrev/ >>> >>> >>> Thanks, >>> -Sherman >> > From xueming.shen at oracle.com Tue Apr 17 21:23:34 2012 From: xueming.shen at oracle.com (Xueming Shen) Date: Tue, 17 Apr 2012 14:23:34 -0700 Subject: Review for 7157656 (zipfs) SeekableByteChannel to entry in zip file... In-Reply-To: References: <903CA3B7-35C5-49A2-8D72-58C87ABC394D@oracle.com> <4F8D3CD2.5060704@oracle.com> Message-ID: <4F8DDF56.9040502@oracle.com> Given the sequential nature of the zip stream, it's a kinda of hard to implement the position(long) method for a "pure" zip byte channel. You don't want to jump either backward or forward N bytes when writing and appending (we don't have a "position mapping" between the compressed and uncompressed data, so you simply can't "position" to a desired N pos when compressing), and for the same reason you don't want to jump back either when reading, the only "meaningful/doable" position(N) operation is when N> position() for reading, which is basically a "skip N - position() byte" operation. In order to implement the position(N), for writing, you have to write all the data without compression into a "buffer", you then can "position(N)" on it. And only do the real compression upon closing. For reading, you have to de-compress the whole zip entry into a buffer first, then build a channel on top of this buffer for the reading/ positioning. This is how newFileChannel is implemented now. -Sherman On 04/17/2012 03:28 AM, Paul Sandoz wrote: > On Apr 17, 2012, at 11:50 AM, Alan Bateman wrote: > >> On 16/04/2012 17:55, Paul Sandoz wrote: >>> Hi, >>> >>> I ain't got permission to publish webrevs yet. So attached is a patch produced by hg export on the jdk tree for: >>> >>> 7157656 (zipfs) SeekableByteChannel to entry in zip file always reports its position as 0 >>> >>> Paul. >> Sherman wrote this zip provider and I assume will want to review this so I'll leave it to him. >> > OK. Managed to push a webrev: > > http://cr.openjdk.java.net/~psandoz/7157656/webrev.0/ > > proxy issues... > > >> One thing I notice, and nothing to do with your patch, is that the position(long) method is missing an implementation, it shouldn't throw UOE. > There is a comment: > // sbc.position(pos) is not supported in current version > in the test code. I put test checks in place, mainly to be consistent, rather than any foresight on my part. > > >> Also for the append case it looks like read throws UOE whereas it should throw NonReadableChannelException. >> > > OK. What about the methods: position& truncate? > > I will let Sherman comment as appropriate. Sherman, i can fix if you like. > > Paul. > From joe.darcy at oracle.com Wed Apr 18 01:14:20 2012 From: joe.darcy at oracle.com (Joe Darcy) Date: Tue, 17 Apr 2012 18:14:20 -0700 Subject: Reviewer needed: 6282196 There should be Math.mod(number, modulo) methods In-Reply-To: <4F8D8337.50509@oracle.com> References: <4F44FA81.9020108@oracle.com> <4F54C1E7.2050802@oracle.com> <4F8C8A6B.8020606@oracle.com> <4F8D8337.50509@oracle.com> Message-ID: <4F8E156C.4080907@oracle.com> On 04/17/2012 07:50 AM, Roger Riggs wrote: > I'm not sure have all the history around the Math vs StrictMath > distinction. For the more "interesting" mathematical methods where multiple implementations are reasonable, the StrictMath version provides cross-platform reproducibility by specifying the particular algorithm that is used while the Math class only specifies general quality of implementation criteria. > There are many cross references between Math and StrictMath for common > functions, for example, ulp, getExponent, copySign, etc. > The distinction is clearer for floating point operations than for > int/log computations. For operations where the Math and StrictMath siblings are specified to have the same output for all arguments, it is valid for either one to delegate to the other. It is always valid for Math.foo to be implemented as a call to StrictMath.foo, but the reverse is not always true. Since the Math methods are probably called more often, *if the Math and StrictMath methods are semantically equivalent*, I'd recommend putting the real implementation in Math and having StrictMath do the call to its sibling. Cheers, -Joe > > Roger > > > On 04/16/2012 05:27 PM, Alex Lam S.L. wrote: >> Hi there, >> >> Sorry if this has been asked before, but I am curious as to why the >> newer methods in StrictMath (including addExact etc.) are now >> delegating to methods in Math. >> >> Looking at the other static methods, they seem to be going in the >> opposite direction, i.e. Math methods calling equivalent methods in >> StrictMath. >> >> >> Thanks, >> Alex. >> >> >> >> On Mon, Apr 16, 2012 at 10:08 PM, Roger >> Riggs wrote: >>> Hi, >>> >>> I've corrected a number of issues raised with javadoc in java.lang.Math >>> and java.lang.StrictMath. The updated webrev is: >>> http://cr.openjdk.java.net/~rriggs/6282196.2/ >>> >>> Please review. >>> >>> Thanks, Roger >>> >>> >>> >>> On 03/05/2012 08:38 AM, Roger Riggs wrote: >>>> CR 6282196 There should be Math.mod(number, modulo) methods >>>> http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6282196 >>>> >>>> Requests that floor and modulus methods be provided for primitive >>>> types. >>>> Floor division is pretty straight-forward, rounding toward minus >>>> infinity. >>>> For modulus of int and long, the sign and range follow the exiting >>>> floor >>>> method >>>> in java.util.Math and satisfy the relation that mod(x, y) = (x - >>>> floorDiv(x, y) * y). >>>> > From zhouyx at linux.vnet.ibm.com Wed Apr 18 02:37:49 2012 From: zhouyx at linux.vnet.ibm.com (Sean Chou) Date: Wed, 18 Apr 2012 10:37:49 +0800 Subject: Replace the static error string in ZIP_Put_In_Cache0 with on stack memory In-Reply-To: <4F8CD9E3.4040401@oracle.com> References: <4F82B361.4080806@oracle.com> <4F83EB02.7050708@oracle.com> <4F85E4E1.3040906@oracle.com> <4F869143.1060101@oracle.com> <4F8CD9E3.4040401@oracle.com> Message-ID: Hi David, To free the error string in ZIP_Open is a result of discussion with hotspot. They said the error string is never used and they do not want to do the free work in hotspot for ZIP_Open... strdup would cause a NULL error string if memory allocation is failed. If strdup is not used, another choice may be asking the caller to reserve the space for error string. Caller can reserve the space on stack, so *pmsg can still be set to NULL in ZIP_Put_In_Cache0 and caller can keep the code for error handling. But this is also strange. Do you have any better solutions? It will not cause SEGV, there are NULL checks before free. On Tue, Apr 17, 2012 at 10:48 AM, David Holmes wrote: > Certainly the string management in this code is a bit of a mess, but I > don't understand why the strdup's of string literals have been introduced. > Even if for a good reason this seems to imply that an allocation failure > will result in a NULL where before the caller was guaranteed never to get > NULL in the error case, and that could lead to SEGV. > > Also with the change to avoid changes on the hotspot side, the actual > cause of the open failure has been lost in ZIP_Open > > David > > > On 13/04/2012 1:14 AM, Sean Chou wrote: > >> Hi Alan, >> >> I made a new webrev, added the comments and the 2 other modification. >> It's now : http://cr.openjdk.java.net/~**zhouyx/7159982/webrev.02/ >> >> On Thu, Apr 12, 2012 at 4:24 PM, Alan Bateman >> >wrote: >> >> On 12/04/2012 06:40, Sean Chou wrote: >>> >>> Hi Alan, >>>> >>>> Many thanks. >>>> >>>> I updated the patch, ZIP_Open frees the error message and set "Zip >>>> file open error". >>>> >>>> The new webrev is : http://cr.openjdk.java.net/~** >>>> zhouyx/7159982/webrev.01/>>> 7Ezhouyx/7159982/webrev.01/ >>>> >< >>>> http://cr.openjdk.java.net/%****7Ezhouyx/7159982/webrev.01/>>> tp://cr.openjdk.java.net/%**7Ezhouyx/7159982/webrev.01/ >>>> > >>>> >>>> >>>>> >>>> >>>> Please take a look once more. >>>> >>>> This looks much better. I think we'll need to add comments to the ZIP_* >>> functions so that it's clear to anyone using them when they need to free >>> the error message and then they don't. >>> >>> One implementation nit at zip_util.c L876 where it should check if pmsg >>> is >>> NULL and I think the tests should be reversed so that its: >>> >>> if (file != NULL&& pmsg != NULL&& *pmsg != NULL) { ... } >>> >>> >>> One other minor nit is L875 where there is a space on either side of the >>> "*", best to keep the style consistent. >>> >>> -Alan. >>> >>> >> >> >> -- Best Regards, Sean Chou From david.holmes at oracle.com Wed Apr 18 02:43:48 2012 From: david.holmes at oracle.com (David Holmes) Date: Wed, 18 Apr 2012 12:43:48 +1000 Subject: Replace the static error string in ZIP_Put_In_Cache0 with on stack memory In-Reply-To: References: <4F82B361.4080806@oracle.com> <4F83EB02.7050708@oracle.com> <4F85E4E1.3040906@oracle.com> <4F869143.1060101@oracle.com> <4F8CD9E3.4040401@oracle.com> Message-ID: <4F8E2A64.5020904@oracle.com> Hi Sean, On 18/04/2012 12:37 PM, Sean Chou wrote: > To free the error string in ZIP_Open is a result of discussion with > hotspot. They said the error string is never used and they do not want > to do the free work in hotspot for ZIP_Open... Ok. I assume there are no other callers of this method. > strdup would cause a NULL error string if memory allocation is > failed. If strdup is not used, another choice may be asking the caller > to reserve the space for error string. Caller can reserve the space on > stack, so *pmsg can still be set to NULL in ZIP_Put_In_Cache0 and caller > can keep the code for error handling. But this is also strange. Do you > have any better solutions? I'm still unclear why the strdup is being used on string literals. Are we concerned with someone modifying the contents of the string literals? > It will not cause SEGV, there are NULL checks before free. It is not the free that I'm worried about. If an error occurs but the strdup fails due to a malloc failure then the caller may reference the msg. Previously this msg was never NULL but now it may be. David ----- > On Tue, Apr 17, 2012 at 10:48 AM, David Holmes > wrote: > > Certainly the string management in this code is a bit of a mess, but > I don't understand why the strdup's of string literals have been > introduced. Even if for a good reason this seems to imply that an > allocation failure will result in a NULL where before the caller was > guaranteed never to get NULL in the error case, and that could lead > to SEGV. > > Also with the change to avoid changes on the hotspot side, the > actual cause of the open failure has been lost in ZIP_Open > > David > > > On 13/04/2012 1:14 AM, Sean Chou wrote: > > Hi Alan, > > I made a new webrev, added the comments and the 2 other > modification. > It's now : > http://cr.openjdk.java.net/~__zhouyx/7159982/webrev.02/ > > > On Thu, Apr 12, 2012 at 4:24 PM, Alan > Bateman >wrote: > > On 12/04/2012 06:40, Sean Chou wrote: > > Hi Alan, > > Many thanks. > > I updated the patch, ZIP_Open frees the error > message and set "Zip > file open error". > > The new webrev is : http://cr.openjdk.java.net/~** > zhouyx/7159982/webrev.01/ >< > http://cr.openjdk.java.net/%**__7Ezhouyx/7159982/webrev.01/ > > > > > > > Please take a look once more. > > This looks much better. I think we'll need to add comments > to the ZIP_* > functions so that it's clear to anyone using them when they > need to free > the error message and then they don't. > > One implementation nit at zip_util.c L876 where it should > check if pmsg is > NULL and I think the tests should be reversed so that its: > > if (file != NULL&& pmsg != NULL&& *pmsg != NULL) { ... } > > > One other minor nit is L875 where there is a space on either > side of the > "*", best to keep the style consistent. > > -Alan. > > > > > > > > -- > Best Regards, > Sean Chou > From zhouyx at linux.vnet.ibm.com Wed Apr 18 03:15:19 2012 From: zhouyx at linux.vnet.ibm.com (Sean Chou) Date: Wed, 18 Apr 2012 11:15:19 +0800 Subject: Replace the static error string in ZIP_Put_In_Cache0 with on stack memory In-Reply-To: <4F8E2A64.5020904@oracle.com> References: <4F82B361.4080806@oracle.com> <4F83EB02.7050708@oracle.com> <4F85E4E1.3040906@oracle.com> <4F869143.1060101@oracle.com> <4F8CD9E3.4040401@oracle.com> <4F8E2A64.5020904@oracle.com> Message-ID: Hi David, The current implementation uses static char array to keep the error message, so it is possible when two errors happen at the same time, the error message will be modified. I have a testcase attached in http://mail.openjdk.java.net/pipermail/core-libs-dev/2012-April/009766.html . So in the patch, the static char array is modified to on stack char array to avoid the race in error case; and strdup is called because the error message is currently kept on stack. But I didn't notice the case that strdup might fail. On Wed, Apr 18, 2012 at 10:43 AM, David Holmes wrote: > Hi Sean, > > > On 18/04/2012 12:37 PM, Sean Chou wrote: > >> To free the error string in ZIP_Open is a result of discussion with >> hotspot. They said the error string is never used and they do not want >> to do the free work in hotspot for ZIP_Open... >> > > Ok. I assume there are no other callers of this method. > > > strdup would cause a NULL error string if memory allocation is >> failed. If strdup is not used, another choice may be asking the caller >> to reserve the space for error string. Caller can reserve the space on >> stack, so *pmsg can still be set to NULL in ZIP_Put_In_Cache0 and caller >> can keep the code for error handling. But this is also strange. Do you >> have any better solutions? >> > > I'm still unclear why the strdup is being used on string literals. Are we > concerned with someone modifying the contents of the string literals? > > > It will not cause SEGV, there are NULL checks before free. >> > > It is not the free that I'm worried about. If an error occurs but the > strdup fails due to a malloc failure then the caller may reference the msg. > Previously this msg was never NULL but now it may be. > > David > ----- > > On Tue, Apr 17, 2012 at 10:48 AM, David Holmes > >> wrote: >> >> Certainly the string management in this code is a bit of a mess, but >> I don't understand why the strdup's of string literals have been >> introduced. Even if for a good reason this seems to imply that an >> allocation failure will result in a NULL where before the caller was >> guaranteed never to get NULL in the error case, and that could lead >> to SEGV. >> >> Also with the change to avoid changes on the hotspot side, the >> actual cause of the open failure has been lost in ZIP_Open >> >> David >> >> >> On 13/04/2012 1:14 AM, Sean Chou wrote: >> >> Hi Alan, >> >> I made a new webrev, added the comments and the 2 other >> modification. >> It's now : >> http://cr.openjdk.java.net/~__**zhouyx/7159982/webrev.02/ >> >> >> > >> >> On Thu, Apr 12, 2012 at 4:24 PM, Alan >> Bateman> >> >>wrote: >> >> >> On 12/04/2012 06:40, Sean Chou wrote: >> >> Hi Alan, >> >> Many thanks. >> >> I updated the patch, ZIP_Open frees the error >> message and set "Zip >> file open error". >> >> The new webrev is : http://cr.openjdk.java.net/~** >> zhouyx/7159982/webrev.01/<**http__://cr.openjdk.java.net/% >> **__7Ezhouyx/7159982/webrev.01/ >> >> >>< >> http://cr.openjdk.java.net/%**** >> __7Ezhouyx/7159982/webrev.01/ >> > *7Ezhouyx/7159982/webrev.01/><**ht__tp://cr.openjdk.java.net/%** >> __7Ezhouyx/7159982/webrev.01/ >> >> >> >> >> >> >> >> >> Please take a look once more. >> >> This looks much better. I think we'll need to add comments >> to the ZIP_* >> functions so that it's clear to anyone using them when they >> need to free >> the error message and then they don't. >> >> One implementation nit at zip_util.c L876 where it should >> check if pmsg is >> NULL and I think the tests should be reversed so that its: >> >> if (file != NULL&& pmsg != NULL&& *pmsg != NULL) { ... } >> >> >> One other minor nit is L875 where there is a space on either >> side of the >> "*", best to keep the style consistent. >> >> -Alan. >> >> >> >> >> >> >> >> -- >> Best Regards, >> Sean Chou >> >> -- Best Regards, Sean Chou From david.holmes at oracle.com Wed Apr 18 04:15:26 2012 From: david.holmes at oracle.com (David Holmes) Date: Wed, 18 Apr 2012 14:15:26 +1000 Subject: Replace the static error string in ZIP_Put_In_Cache0 with on stack memory In-Reply-To: References: <4F82B361.4080806@oracle.com> <4F83EB02.7050708@oracle.com> <4F85E4E1.3040906@oracle.com> <4F869143.1060101@oracle.com> <4F8CD9E3.4040401@oracle.com> <4F8E2A64.5020904@oracle.com> Message-ID: <4F8E3FDE.9010400@oracle.com> On 18/04/2012 1:15 PM, Sean Chou wrote: > Hi David, > > The current implementation uses static char array to keep the error > message, so it is possible when two errors happen at the same time, the > error message will be modified. I have a testcase attached in > http://mail.openjdk.java.net/pipermail/core-libs-dev/2012-April/009766.html > . Yes that is understood. > So in the patch, the static char array is modified to on stack char > array to avoid the race in error case; and strdup is called because the > error message is currently kept on stack. But I didn't notice the case > that strdup might fail. I couldn't see why you changed ZIP_Get_From_Cache but now I see that it and ZIP_Put_In_Cache have to follow the same convention regarding the error string. Sorry for the confusion. David ----- > On Wed, Apr 18, 2012 at 10:43 AM, David Holmes > wrote: > > Hi Sean, > > > On 18/04/2012 12:37 PM, Sean Chou wrote: > > To free the error string in ZIP_Open is a result of > discussion with > hotspot. They said the error string is never used and they do > not want > to do the free work in hotspot for ZIP_Open... > > > Ok. I assume there are no other callers of this method. > > > strdup would cause a NULL error string if memory allocation is > failed. If strdup is not used, another choice may be asking the > caller > to reserve the space for error string. Caller can reserve the > space on > stack, so *pmsg can still be set to NULL in ZIP_Put_In_Cache0 > and caller > can keep the code for error handling. But this is also strange. > Do you > have any better solutions? > > > I'm still unclear why the strdup is being used on string literals. > Are we concerned with someone modifying the contents of the string > literals? > > > It will not cause SEGV, there are NULL checks before free. > > > It is not the free that I'm worried about. If an error occurs but > the strdup fails due to a malloc failure then the caller may > reference the msg. Previously this msg was never NULL but now it may be. > > David > ----- > > On Tue, Apr 17, 2012 at 10:48 AM, David Holmes > > >> wrote: > > Certainly the string management in this code is a bit of a > mess, but > I don't understand why the strdup's of string literals have been > introduced. Even if for a good reason this seems to imply > that an > allocation failure will result in a NULL where before the > caller was > guaranteed never to get NULL in the error case, and that > could lead > to SEGV. > > Also with the change to avoid changes on the hotspot side, the > actual cause of the open failure has been lost in ZIP_Open > > David > > > On 13/04/2012 1:14 AM, Sean Chou wrote: > > Hi Alan, > > I made a new webrev, added the comments and the 2 other > modification. > It's now : > http://cr.openjdk.java.net/~____zhouyx/7159982/webrev.02/ > > > > > > On Thu, Apr 12, 2012 at 4:24 PM, Alan > Bateman >>wrote: > > > On 12/04/2012 06:40, Sean Chou wrote: > > Hi Alan, > > Many thanks. > > I updated the patch, ZIP_Open frees the error > message and set "Zip > file open error". > > The new webrev is : http://cr.openjdk.java.net/~** > > zhouyx/7159982/webrev.01/<__http__://cr.openjdk.java.net/%____7Ezhouyx/7159982/webrev.01/ > >>< > http://cr.openjdk.java.net/%**____7Ezhouyx/7159982/webrev.01/ > > ><__ht__tp://cr.openjdk.java.net/%____7Ezhouyx/7159982/webrev.01/ > > > >> > > > > > Please take a look once more. > > This looks much better. I think we'll need to add > comments > to the ZIP_* > functions so that it's clear to anyone using them > when they > need to free > the error message and then they don't. > > One implementation nit at zip_util.c L876 where it > should > check if pmsg is > NULL and I think the tests should be reversed so > that its: > > if (file != NULL&& pmsg != NULL&& *pmsg != NULL) > { ... } > > > One other minor nit is L875 where there is a space > on either > side of the > "*", best to keep the style consistent. > > -Alan. > > > > > > > > -- > Best Regards, > Sean Chou > > > > > -- > Best Regards, > Sean Chou > From mandy.chung at oracle.com Wed Apr 18 05:34:58 2012 From: mandy.chung at oracle.com (Mandy Chung) Date: Tue, 17 Apr 2012 22:34:58 -0700 Subject: sun.management.Agent: the properties.putAll API may fail with ConcurrentModifcationException on multi-thread scenario In-Reply-To: <4F8D1CBC.5040205@linux.vnet.ibm.com> References: <4F853485.7020607@linux.vnet.ibm.com> <4F863945.7020701@oracle.com> <4F8D1CBC.5040205@linux.vnet.ibm.com> Message-ID: <4F8E5282.3070507@oracle.com> On 4/17/2012 12:33 AM, Deven You wrote: >> I think this could still run into CME. System Properties is not a >> synchronized map and the setter methods (System.setProperty or >> Properties.put method) doesn't synchronize on the Properties object. >> > Hi Mandy, > > I didn't catch you. Do you mean there are other setter methods of > System properties in the Agent.java which are not synchronized? The setter methods I'm referring to are System.setProperty and System.getProperties().put(). Mandy From youdwei at linux.vnet.ibm.com Wed Apr 18 06:20:36 2012 From: youdwei at linux.vnet.ibm.com (Deven You) Date: Wed, 18 Apr 2012 14:20:36 +0800 Subject: sun.management.Agent: the properties.putAll API may fail with ConcurrentModifcationException on multi-thread scenario In-Reply-To: <4F8E5282.3070507@oracle.com> References: <4F853485.7020607@linux.vnet.ibm.com> <4F863945.7020701@oracle.com> <4F8D1CBC.5040205@linux.vnet.ibm.com> <4F8E5282.3070507@oracle.com> Message-ID: <4F8E5D34.8050901@linux.vnet.ibm.com> On 04/18/2012 01:34 PM, Mandy Chung wrote: > > > On 4/17/2012 12:33 AM, Deven You wrote: >>> I think this could still run into CME. System Properties is not a >>> synchronized map and the setter methods (System.setProperty or >>> Properties.put method) doesn't synchronize on the Properties object. >>> >> Hi Mandy, >> >> I didn't catch you. Do you mean there are other setter methods of >> System properties in the Agent.java which are not synchronized? > > The setter methods I'm referring to are System.setProperty and > System.getProperties().put(). > > Mandy > Hi Mandy, I have gone through the Agent.java, I think other set/put methods related to properties are protected properly. public static void agentmain using parseString(args) which return a properties which is a local var and is not possible to cause concurrent problem when call config_props.putAll(arg_props). private static synchronized void startLocalManagementAgent() is synchronized already. private static synchronized void startRemoteManagementAgent(String args) is synchronized also. Could you point where the CME may ocurr? Thanks a lot! -- Best Regards, Deven From paul.sandoz at oracle.com Wed Apr 18 08:12:03 2012 From: paul.sandoz at oracle.com (Paul Sandoz) Date: Wed, 18 Apr 2012 10:12:03 +0200 Subject: Codereview request 7067045: replaceAll("\u20ac", "$"); causses java.lang.StringIndexOutOfBoundsExceptio In-Reply-To: <4F8DC5F4.1010303@oracle.com> References: <4F87366F.3050708@oracle.com> <3FE9CA49-84EC-40C2-91F6-F21744E76A5F@oracle.com> <9159FBC2-E3C3-43F8-835A-37F21F18F924@oracle.com> <4F8DC5F4.1010303@oracle.com> Message-ID: <481E8858-F2C1-4C4E-B55E-779641F6CB59@oracle.com> On Apr 17, 2012, at 9:35 PM, Xueming Shen wrote: > Hi Paul, I'm fine with the more detailed the exception messages. Though personally I don't > see the necessity of using String.format(...) for those String and integer arguments, Yeah, a habit of mine, when editing I find it easier to modify rather than shuffling string concatenations. > a simple > concatenation might be good enough here. Are you interested to start from filing a new bug > on this issue and then go through the whole process to update these exception message? > Yes, except i cannot file a bug yet... still sorting out access. Thanks, Paul. > Thanks! > -Sherman > > On 04/17/2012 10:02 AM, Paul Sandoz wrote: >> Hi Sherman, >> >> Here is an example: >> >> http://cr.openjdk.java.net/~psandoz/errors-in-matcher/webrev.0/ >> >> I am not sure what, if any, are the JDK guidelines for stuffing information in exception messages. >> >> Paul. >> >> On Apr 16, 2012, at 10:24 AM, Paul Sandoz wrote: >> >>> Hi Sherman, >>> >>> IMHO it is worth spending a little time getting the exception messages a little more accurate. I have spent too many a time staring at such messages wondering what the heck is going on :-) >>> >>> e.g. >>> >>> Syntax error parsing replacement string: escaped literal character is missing at the end of the string. >>> >>> Syntax error parsing replacement string: group reference is missing at the end of the string. >>> >>> >>> Since i am proposing this i will send a patch. It will help me get familiar with the whole OpenJDK process. >>> >>> Pau;. >>> >>> On Apr 12, 2012, at 10:09 PM, Xueming Shen wrote: >>> >>>> Hi >>>> >>>> Please help review the change for 7067045. >>>> >>>> The change is to throw a more meaningful IAE instead of the StringIndexoutputOfBoundsException >>>> if backslash or $ is the last character in the replacement string. (as the API indicated, the backslash >>>> and $ character in String's regex replacement and Matcher class have special meanings, backslash >>>> is for literal character escape and the $ is the capturing group reference, which needs a group index). >>>> >>>> http://cr.openjdk.java.net/~sherman/7067045/webrev/ >>>> >>>> Thanks, >>>> -Sherman >>> >> > From Alan.Bateman at oracle.com Wed Apr 18 08:32:25 2012 From: Alan.Bateman at oracle.com (Alan Bateman) Date: Wed, 18 Apr 2012 09:32:25 +0100 Subject: Review for 7157656 (zipfs) SeekableByteChannel to entry in zip file... In-Reply-To: <4F8DDF56.9040502@oracle.com> References: <903CA3B7-35C5-49A2-8D72-58C87ABC394D@oracle.com> <4F8D3CD2.5060704@oracle.com> <4F8DDF56.9040502@oracle.com> Message-ID: <4F8E7C19.7010209@oracle.com> On 17/04/2012 22:23, Xueming Shen wrote: > > Given the sequential nature of the zip stream, it's a kinda of hard to > implement the > position(long) method for a "pure" zip byte channel. You don't want to > jump either > backward or forward N bytes when writing and appending (we don't have > a "position > mapping" between the compressed and uncompressed data, so you simply > can't > "position" to a desired N pos when compressing), and for the same > reason you don't > want to jump back either when reading, the only "meaningful/doable" > position(N) > operation is when N> position() for reading, which is basically a > "skip N - position() > byte" operation. > > In order to implement the position(N), for writing, you have to write > all the data > without compression into a "buffer", you then can "position(N)" on it. > And only do the > real compression upon closing. For reading, you have to de-compress > the whole zip > entry into a buffer first, then build a channel on top of this buffer > for the reading/ > positioning. This is how newFileChannel is implemented now. > > -Sherman Right, a SeekableByteChannel allows for random access but you don't know in advance how the channel will actually be used, it may only be used for sequential access. Given that the zip provider supports FileChannel then maybe it could be implemented so that it switches (behind the scenes) to a FileChannel when position is invoked to seek to a positioncurrent can just skip as you suggest, the write-only case would have to switch to a FileChannel. It will likely to be tricky of course. BTW: This the comment was just a passing comment when looking at Paul's patch, it's of course a several issue/project that should preclude Paul's fix from going in. -Alan From Alan.Bateman at oracle.com Wed Apr 18 08:38:53 2012 From: Alan.Bateman at oracle.com (Alan Bateman) Date: Wed, 18 Apr 2012 09:38:53 +0100 Subject: Review for 7157656 (zipfs) SeekableByteChannel to entry in zip file... In-Reply-To: <4F8E7C19.7010209@oracle.com> References: <903CA3B7-35C5-49A2-8D72-58C87ABC394D@oracle.com> <4F8D3CD2.5060704@oracle.com> <4F8DDF56.9040502@oracle.com> <4F8E7C19.7010209@oracle.com> Message-ID: <4F8E7D9D.8070509@oracle.com> On 18/04/2012 09:32, Alan Bateman wrote: > BTW: This the comment was just a passing comment when looking at > Paul's patch, it's of course a several issue/project that should > preclude Paul's fix from going in. That statement is a bit garbled, it should read "This was just a passing comment when looking at Paul's patch, it is of course a separate issue/project and shouldn't preclude Paul's fix from going in". From Roger.Riggs at Oracle.com Wed Apr 18 10:33:23 2012 From: Roger.Riggs at Oracle.com (Roger Riggs) Date: Wed, 18 Apr 2012 06:33:23 -0400 Subject: Codereview request 7067045: replaceAll("\u20ac", "$"); causses java.lang.StringIndexOutOfBoundsExceptio In-Reply-To: <481E8858-F2C1-4C4E-B55E-779641F6CB59@oracle.com> References: <4F87366F.3050708@oracle.com> <3FE9CA49-84EC-40C2-91F6-F21744E76A5F@oracle.com> <9159FBC2-E3C3-43F8-835A-37F21F18F924@oracle.com> <4F8DC5F4.1010303@oracle.com> <481E8858-F2C1-4C4E-B55E-779641F6CB59@oracle.com> Message-ID: <4F8E9873.1060604@Oracle.com> There may be a bug in the test at RegExTest:L860, since the IAE is expected the second test for "\\" will not occur. Perhaps there should be a comment in the empty block at L863. Static strings should usually be sufficient and can be localized if needed though the core libs exception messages have no requirement to be localizable. If the arguments are needed, I would prefer String.format over implicit concatenation. Calls to String.format are easier to maintain and easier to read in the source. Keep in mind that any computation of the message will be done every time the exception is thrown whether anyone ever sees the message or not. $.02, Roger On 4/18/12 4:12 AM, Paul Sandoz wrote: > On Apr 17, 2012, at 9:35 PM, Xueming Shen wrote: > >> Hi Paul, I'm fine with the more detailed the exception messages. Though personally I don't >> see the necessity of using String.format(...) for those String and integer arguments, > Yeah, a habit of mine, when editing I find it easier to modify rather than shuffling string concatenations. > > >> a simple >> concatenation might be good enough here. Are you interested to start from filing a new bug >> on this issue and then go through the whole process to update these exception message? >> > Yes, except i cannot file a bug yet... still sorting out access. > > Thanks, > Paul. > >> Thanks! >> -Sherman >> >> On 04/17/2012 10:02 AM, Paul Sandoz wrote: >>> Hi Sherman, >>> >>> Here is an example: >>> >>> http://cr.openjdk.java.net/~psandoz/errors-in-matcher/webrev.0/ >>> >>> I am not sure what, if any, are the JDK guidelines for stuffing information in exception messages. >>> >>> Paul. >>> >>> On Apr 16, 2012, at 10:24 AM, Paul Sandoz wrote: >>> >>>> Hi Sherman, >>>> >>>> IMHO it is worth spending a little time getting the exception messages a little more accurate. I have spent too many a time staring at such messages wondering what the heck is going on :-) >>>> >>>> e.g. >>>> >>>> Syntax error parsing replacement string: escaped literal character is missing at the end of the string. >>>> >>>> Syntax error parsing replacement string: group reference is missing at the end of the string. >>>> >>>> >>>> Since i am proposing this i will send a patch. It will help me get familiar with the whole OpenJDK process. >>>> >>>> Pau;. >>>> >>>> On Apr 12, 2012, at 10:09 PM, Xueming Shen wrote: >>>> >>>>> Hi >>>>> >>>>> Please help review the change for 7067045. >>>>> >>>>> The change is to throw a more meaningful IAE instead of the StringIndexoutputOfBoundsException >>>>> if backslash or $ is the last character in the replacement string. (as the API indicated, the backslash >>>>> and $ character in String's regex replacement and Matcher class have special meanings, backslash >>>>> is for literal character escape and the $ is the capturing group reference, which needs a group index). >>>>> >>>>> http://cr.openjdk.java.net/~sherman/7067045/webrev/ >>>>> >>>>> Thanks, >>>>> -Sherman From Alan.Bateman at oracle.com Wed Apr 18 11:43:16 2012 From: Alan.Bateman at oracle.com (Alan Bateman) Date: Wed, 18 Apr 2012 12:43:16 +0100 Subject: Codereview request 7067045: replaceAll("\u20ac", "$"); causses java.lang.StringIndexOutOfBoundsExceptio In-Reply-To: <4F8E9873.1060604@Oracle.com> References: <4F87366F.3050708@oracle.com> <3FE9CA49-84EC-40C2-91F6-F21744E76A5F@oracle.com> <9159FBC2-E3C3-43F8-835A-37F21F18F924@oracle.com> <4F8DC5F4.1010303@oracle.com> <481E8858-F2C1-4C4E-B55E-779641F6CB59@oracle.com> <4F8E9873.1060604@Oracle.com> Message-ID: <4F8EA8D4.6000108@oracle.com> On 18/04/2012 11:33, Roger Riggs wrote: > There may be a bug in the test at RegExTest:L860, since the IAE is > expected > the second test for "\\" will not occur. Perhaps there should be a > comment in the empty > block at L863. This came up during the code review but the changes were already pushed. Sherman said he would sort it out when pushing the next changes to this test. -Alan From zhouyx at linux.vnet.ibm.com Wed Apr 18 12:23:33 2012 From: zhouyx at linux.vnet.ibm.com (Sean Chou) Date: Wed, 18 Apr 2012 20:23:33 +0800 Subject: Replace the static error string in ZIP_Put_In_Cache0 with on stack memory In-Reply-To: <4F8E3FDE.9010400@oracle.com> References: <4F82B361.4080806@oracle.com> <4F83EB02.7050708@oracle.com> <4F85E4E1.3040906@oracle.com> <4F869143.1060101@oracle.com> <4F8CD9E3.4040401@oracle.com> <4F8E2A64.5020904@oracle.com> <4F8E3FDE.9010400@oracle.com> Message-ID: Hi David, Alan, So is the patch acceptable ? It's webrev: http://cr.openjdk.java.net/~zhouyx/7159982/webrev.02/ On Wed, Apr 18, 2012 at 12:15 PM, David Holmes wrote: > On 18/04/2012 1:15 PM, Sean Chou wrote: > >> Hi David, >> >> The current implementation uses static char array to keep the error >> message, so it is possible when two errors happen at the same time, the >> error message will be modified. I have a testcase attached in >> http://mail.openjdk.java.net/**pipermail/core-libs-dev/2012-** >> April/009766.html >> . >> > > Yes that is understood. > > > So in the patch, the static char array is modified to on stack char >> array to avoid the race in error case; and strdup is called because the >> error message is currently kept on stack. But I didn't notice the case >> that strdup might fail. >> > > I couldn't see why you changed ZIP_Get_From_Cache but now I see that it > and ZIP_Put_In_Cache have to follow the same convention regarding the error > string. > > Sorry for the confusion. > > David > ----- > > On Wed, Apr 18, 2012 at 10:43 AM, David Holmes > >> wrote: >> >> Hi Sean, >> >> >> On 18/04/2012 12:37 PM, Sean Chou wrote: >> >> To free the error string in ZIP_Open is a result of >> discussion with >> hotspot. They said the error string is never used and they do >> not want >> to do the free work in hotspot for ZIP_Open... >> >> >> Ok. I assume there are no other callers of this method. >> >> >> strdup would cause a NULL error string if memory allocation is >> failed. If strdup is not used, another choice may be asking the >> caller >> to reserve the space for error string. Caller can reserve the >> space on >> stack, so *pmsg can still be set to NULL in ZIP_Put_In_Cache0 >> and caller >> can keep the code for error handling. But this is also strange. >> Do you >> have any better solutions? >> >> >> I'm still unclear why the strdup is being used on string literals. >> Are we concerned with someone modifying the contents of the string >> literals? >> >> >> It will not cause SEGV, there are NULL checks before free. >> >> >> It is not the free that I'm worried about. If an error occurs but >> the strdup fails due to a malloc failure then the caller may >> reference the msg. Previously this msg was never NULL but now it may >> be. >> >> David >> ----- >> >> On Tue, Apr 17, 2012 at 10:48 AM, David Holmes >> >> > >> > >> >>> >> wrote: >> >> Certainly the string management in this code is a bit of a >> mess, but >> I don't understand why the strdup's of string literals have >> been >> introduced. Even if for a good reason this seems to imply >> that an >> allocation failure will result in a NULL where before the >> caller was >> guaranteed never to get NULL in the error case, and that >> could lead >> to SEGV. >> >> Also with the change to avoid changes on the hotspot side, the >> actual cause of the open failure has been lost in ZIP_Open >> >> David >> >> >> On 13/04/2012 1:14 AM, Sean Chou wrote: >> >> Hi Alan, >> >> I made a new webrev, added the comments and the 2 >> other >> modification. >> It's now : >> http://cr.openjdk.java.net/~__**__zhouyx/7159982/webrev.02/ >> >> > >> >> >> >> >> >> >> >> On Thu, Apr 12, 2012 at 4:24 PM, Alan >> Bateman> > >> >> >>>wrote: >> >> >> On 12/04/2012 06:40, Sean Chou wrote: >> >> Hi Alan, >> >> Many thanks. >> >> I updated the patch, ZIP_Open frees the error >> message and set "Zip >> file open error". >> >> The new webrev is : http://cr.openjdk.java.net/~** >> >> zhouyx/7159982/webrev.01/<__**http__://cr.openjdk.java.net/%** >> ____7Ezhouyx/7159982/webrev.**01/ > _7Ezhouyx/7159982/webrev.01/> >> > >> >>>**< >> http://cr.openjdk.java.net/%****____7Ezhouyx/7159982/webrev.**01/ >> >> > >** >> <__ht__tp://cr.openjdk.java.**net/%____7Ezhouyx/7159982/**webrev.01/ >> >> >> > >> >> >>> >> >> >> >> >> Please take a look once more. >> >> This looks much better. I think we'll need to add >> comments >> to the ZIP_* >> functions so that it's clear to anyone using them >> when they >> need to free >> the error message and then they don't. >> >> One implementation nit at zip_util.c L876 where it >> should >> check if pmsg is >> NULL and I think the tests should be reversed so >> that its: >> >> if (file != NULL&& pmsg != NULL&& *pmsg != NULL) >> { ... } >> >> >> One other minor nit is L875 where there is a space >> on either >> side of the >> "*", best to keep the style consistent. >> >> -Alan. >> >> >> >> >> >> >> >> -- >> Best Regards, >> Sean Chou >> >> >> >> >> -- >> Best Regards, >> Sean Chou >> >> -- Best Regards, Sean Chou From david.holmes at oracle.com Wed Apr 18 13:02:01 2012 From: david.holmes at oracle.com (David Holmes) Date: Wed, 18 Apr 2012 23:02:01 +1000 Subject: Replace the static error string in ZIP_Put_In_Cache0 with on stack memory In-Reply-To: References: <4F82B361.4080806@oracle.com> <4F83EB02.7050708@oracle.com> <4F85E4E1.3040906@oracle.com> <4F869143.1060101@oracle.com> <4F8CD9E3.4040401@oracle.com> <4F8E2A64.5020904@oracle.com> <4F8E3FDE.9010400@oracle.com> Message-ID: <4F8EBB49.2@oracle.com> On 18/04/2012 10:23 PM, Sean Chou wrote: > Hi David, Alan, > > So is the patch acceptable ? There is still the matter of the unexpected NULL if strdup fails. I'd need to see the clients for this code to see how they handle failure. My concern is the case where the caller sees a NULL return which indicates an error, and so accesses the msg and now potentially hits another NULL. It's unlikely but ... David > It's webrev: > http://cr.openjdk.java.net/~zhouyx/7159982/webrev.02/ > > > On Wed, Apr 18, 2012 at 12:15 PM, David Holmes > wrote: > > On 18/04/2012 1:15 PM, Sean Chou wrote: > > Hi David, > > The current implementation uses static char array to keep > the error > message, so it is possible when two errors happen at the same > time, the > error message will be modified. I have a testcase attached in > http://mail.openjdk.java.net/__pipermail/core-libs-dev/2012-__April/009766.html > > . > > > Yes that is understood. > > > So in the patch, the static char array is modified to on > stack char > array to avoid the race in error case; and strdup is called > because the > error message is currently kept on stack. But I didn't notice > the case > that strdup might fail. > > > I couldn't see why you changed ZIP_Get_From_Cache but now I see that > it and ZIP_Put_In_Cache have to follow the same convention regarding > the error string. > > Sorry for the confusion. > > David > ----- > > On Wed, Apr 18, 2012 at 10:43 AM, David Holmes > > >> wrote: > > Hi Sean, > > > On 18/04/2012 12:37 PM, Sean Chou wrote: > > To free the error string in ZIP_Open is a result of > discussion with > hotspot. They said the error string is never used and > they do > not want > to do the free work in hotspot for ZIP_Open... > > > Ok. I assume there are no other callers of this method. > > > strdup would cause a NULL error string if memory > allocation is > failed. If strdup is not used, another choice may be > asking the > caller > to reserve the space for error string. Caller can > reserve the > space on > stack, so *pmsg can still be set to NULL in > ZIP_Put_In_Cache0 > and caller > can keep the code for error handling. But this is also > strange. > Do you > have any better solutions? > > > I'm still unclear why the strdup is being used on string > literals. > Are we concerned with someone modifying the contents of the > string > literals? > > > It will not cause SEGV, there are NULL checks > before free. > > > It is not the free that I'm worried about. If an error > occurs but > the strdup fails due to a malloc failure then the caller may > reference the msg. Previously this msg was never NULL but > now it may be. > > David > ----- > > On Tue, Apr 17, 2012 at 10:48 AM, David Holmes > > > > ____com > > >>> wrote: > > Certainly the string management in this code is a > bit of a > mess, but > I don't understand why the strdup's of string > literals have been > introduced. Even if for a good reason this seems to > imply > that an > allocation failure will result in a NULL where > before the > caller was > guaranteed never to get NULL in the error case, and that > could lead > to SEGV. > > Also with the change to avoid changes on the hotspot > side, the > actual cause of the open failure has been lost in > ZIP_Open > > David > > > On 13/04/2012 1:14 AM, Sean Chou wrote: > > Hi Alan, > > I made a new webrev, added the comments and > the 2 other > modification. > It's now : > http://cr.openjdk.java.net/~______zhouyx/7159982/webrev.02/ > > > > > > > >> > > On Thu, Apr 12, 2012 at 4:24 PM, Alan > Bateman ____com > > >>>wrote: > > > On 12/04/2012 06:40, Sean Chou wrote: > > Hi Alan, > > Many thanks. > > I updated the patch, ZIP_Open frees > the error > message and set "Zip > file open error". > > The new webrev is : > http://cr.openjdk.java.net/~** > > > zhouyx/7159982/webrev.01/<____http__://cr.openjdk.java.net/%______7Ezhouyx/7159982/webrev.__01/ > > > >>>__< > http://cr.openjdk.java.net/%**______7Ezhouyx/7159982/webrev.__01/ > __> > > >>__<__ht__tp://cr.openjdk.java.__net/%____7Ezhouyx/7159982/__webrev.01/ > > > > > > > >>> > > > > > Please take a look once more. > > This looks much better. I think we'll need > to add > comments > to the ZIP_* > functions so that it's clear to anyone using > them > when they > need to free > the error message and then they don't. > > One implementation nit at zip_util.c L876 > where it > should > check if pmsg is > NULL and I think the tests should be reversed so > that its: > > if (file != NULL&& pmsg != NULL&& *pmsg != > NULL) > { ... } > > > One other minor nit is L875 where there is a > space > on either > side of the > "*", best to keep the style consistent. > > -Alan. > > > > > > > > -- > Best Regards, > Sean Chou > > > > > -- > Best Regards, > Sean Chou > > > > > -- > Best Regards, > Sean Chou > From michael.x.mcmahon at oracle.com Wed Apr 18 13:32:28 2012 From: michael.x.mcmahon at oracle.com (Michael McMahon) Date: Wed, 18 Apr 2012 14:32:28 +0100 Subject: [7u6] RFR: 7162043: Add headless mode tests to problem list [macosx] In-Reply-To: <4F8E9A94.8060105@oracle.com> References: <4F8D832C.7080109@oracle.com> <4F8D87AF.2010503@oracle.com> <4F8E9373.40709@oracle.com> <4F8E9A94.8060105@oracle.com> Message-ID: <4F8EC26C.9050006@oracle.com> On 18/04/12 11:42, Alan Bateman wrote: > On 18/04/2012 11:12, Michael McMahon wrote: >> and also here is the equivalent webrev for 8. There are fewer >> failures on 8. >> >> http://cr.openjdk.java.net/~michaelm/7162043/8/webrev.1/ > It's best to bring that to core-libs-dev. My real comment is that I > don't understand why there are less javax.script tests failing with > jdk8 when running headless, I would think it's the same list as jdk7u. > > -Alan I've done a second test run and what seems to be happening is that after a random number of failures (of that batch) jtreg seems to bail out. So, that's why I didn't see the other failures. I've added the other missing ones to the list now http://cr.openjdk.java.net/~michaelm/7162043/8/webrev.2/ - Michael From jason_mehrens at hotmail.com Wed Apr 18 13:44:12 2012 From: jason_mehrens at hotmail.com (Jason Mehrens) Date: Wed, 18 Apr 2012 08:44:12 -0500 Subject: review request: 4244896: (process) Provide System.getPid(), System.killProcess(String pid) In-Reply-To: <4F8D849E.8090607@oracle.com> References: <4F861847.5080308@oracle.com> <4F869AD6.7010903@oracle.com>,<4F8D849E.8090607@oracle.com> Message-ID: Rob, It looks like waitFor is calling Object.wait(long) without owning this objects monitor. If I pass Long.MAX_VALUE to waitFor, shouldn't waitFor return if the early if the process ends? Jason > Date: Tue, 17 Apr 2012 15:56:30 +0100 > From: rob.mckenna at oracle.com > To: Alan.Bateman at oracle.com > Subject: Re: review request: 4244896: (process) Provide System.getPid(), System.killProcess(String pid) > CC: core-libs-dev at openjdk.java.net > > New webrev at: > > http://cr.openjdk.java.net/~robm/4244896/webrev.01/ > > Differences: > - implemented Process.waitFor(long timeout). I figured I'd throw it in > and let you decide if you want to keep it / replace isAlive. > - implemented defaults in Process.java > - destroyForcibly now returns the Process object > - Updated documentation > - Added @Override to all new overrides. > - Fixed long line in UNIXProcess_md.c consistent with other functions in > that file. > - Replaced WaitForSingleObject with GetExitCodeProcess: given the > concerns raised it seems to make more sense to leave users who return > STILL_ACTIVE as an error code on their own. > - Test updated to allow for proper execution of shell script. > > -Rob > > On 12/04/12 10:05, Alan Bateman wrote: > > On 12/04/2012 00:48, Rob McKenna wrote: > >> Hi folks, > >> > >> I'm hoping for some feedback on the above. Webrev: > >> > >> http://cr.openjdk.java.net/~robm/4244896/webrev.00/ > > Thanks for taking this one on, a destroyForcibly is really useful to > > have (destroy was always misleading given that that is was actually a > > SIGTERM). The isAlive is also useful, another choice would be a > > waitFor that takes a timeout. > > > > As this patch adds two abstract methods it means there will be a > > source compatibility issue. Process has been in the platform since > > JDK1.0 so it likely there are other implementation, perhaps mocked. > > For destroyForcibly then a reasonable default could invoke the > > existing destroy but this would need to be specified. A possible > > default for isAlive is to invoke exitValue and mask the IAE when it > > hasn't terminated. > > > > On the javadoc then destroyForcibly needs to specify the return value, > > I think I missed this in the original patch that I gave you off-list. > > Having it return the Process is very useful as it allows for method > > invocation chaining, exitCode = p.destroyForcibly().waitFor(). I also > > think destroyForcibly needs to set expectation that the process may > > not terminate immediately (isAlive might still return true for a brief > > period for example). > > > > The duplicate code in UNIXProcess.java.* is a reminder that we could > > combine the common code into something like a private package > > AbstractUNIXPorcess that would be extended by UNIXProcess, not for > > this patch of course. > > > > Looks like there is inconsistent use of @Override, you've added it to > > the isAlive implementation but not the others. > > > > Looks like UNIXProcess_md.c is straying beyond 80c so you might want > > to move the force parameter to the next line. > > > > Overall I think the implementation looks okay but one thing to think > > about is errors, WaitForSingleObject can fail with other errors, the > > return from kill is not checked. > > > > I don't have time to study the test is detail just now but I suspect > > invoking "./ProcessKillTest.sh" will need to change as the script will > > be in test.src and may not have execute permission. Also I see tests > > for specific exit codes which may be problematic (and will need to be > > updated for MacOSX). For isAlive then it may be better to test it by > > adding to existing tests. > > > > -Alan. > > > > From Alan.Bateman at oracle.com Wed Apr 18 14:28:10 2012 From: Alan.Bateman at oracle.com (Alan Bateman) Date: Wed, 18 Apr 2012 15:28:10 +0100 Subject: [7u6] RFR: 7162043: Add headless mode tests to problem list [macosx] In-Reply-To: <4F8EC26C.9050006@oracle.com> References: <4F8D832C.7080109@oracle.com> <4F8D87AF.2010503@oracle.com> <4F8E9373.40709@oracle.com> <4F8E9A94.8060105@oracle.com> <4F8EC26C.9050006@oracle.com> Message-ID: <4F8ECF7A.4080408@oracle.com> On 18/04/2012 14:32, Michael McMahon wrote: > I've done a second test run and what seems to be happening is that > after a random number > of failures (of that batch) jtreg seems to bail out. So, that's why I > didn't see the other failures. > I've added the other missing ones to the list now > > http://cr.openjdk.java.net/~michaelm/7162043/8/webrev.2/ > > - Michael Looks okay to me. BTW: Did you trying change the @run tag to specify headless mode to see if that would make a difference? -Alan. From michael.x.mcmahon at oracle.com Wed Apr 18 15:08:59 2012 From: michael.x.mcmahon at oracle.com (michael.x.mcmahon at oracle.com) Date: Wed, 18 Apr 2012 15:08:59 +0000 Subject: hg: jdk8/tl/jdk: 2 new changesets Message-ID: <20120418150930.23C0A47146@hg.openjdk.java.net> Changeset: 9de97594f062 Author: michaelm Date: 2012-04-18 16:04 +0100 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/9de97594f062 7162043: Add headless mode tests to problem list [macosx] Reviewed-by: alanb ! test/ProblemList.txt Changeset: 06e4020eebb2 Author: michaelm Date: 2012-04-18 16:05 +0100 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/06e4020eebb2 Merge From Alan.Bateman at oracle.com Wed Apr 18 15:58:15 2012 From: Alan.Bateman at oracle.com (Alan Bateman) Date: Wed, 18 Apr 2012 16:58:15 +0100 Subject: review request: 4244896: (process) Provide System.getPid(), System.killProcess(String pid) In-Reply-To: <4F8D849E.8090607@oracle.com> References: <4F861847.5080308@oracle.com> <4F869AD6.7010903@oracle.com> <4F8D849E.8090607@oracle.com> Message-ID: <4F8EE497.3090506@oracle.com> On 17/04/2012 15:56, Rob McKenna wrote: > New webrev at: > > http://cr.openjdk.java.net/~robm/4244896/webrev.01/ > > Differences: > - implemented Process.waitFor(long timeout). I figured I'd throw it in > and let you decide if you want to keep it / replace isAlive. > - implemented defaults in Process.java > - destroyForcibly now returns the Process object > - Updated documentation > - Added @Override to all new overrides. > - Fixed long line in UNIXProcess_md.c consistent with other functions > in that file. > - Replaced WaitForSingleObject with GetExitCodeProcess: given the > concerns raised it seems to make more sense to leave users who return > STILL_ACTIVE as an error code on their own. > - Test updated to allow for proper execution of shell script. > > -Rob I don't have time to do a detailed review just now but I did go through the changes to java.lang.Process as I think you mostly need feedback on the API at this point. One minor thing is that you'll need to add @since 1.8 to the new methods. I think destroyForcibly's javadoc will need to specify the default implementation (ie for the case that these methods aren't overridden), maybe something like "The default implementation of this method invokes destroy and so is implementation dependent as to whether it terminates the process forcibly or not. Implementations that are strong encouraged to override this method.". I'm in two minds on waitFor(timeout). It is clearly useful but a default implementation will be awkward and probably will require a loop that polls and sleeps. I'm also not sure that a return of -1 is a good idea as you you can't distinguish this from a sub-process that completes with an exit code of -1. Maybe it would be better to return a boolean, like the awaitTermination methods in j.u.c. The javadoc is also a bit unclear as it states "wait for a specified timeout" whereas it is only useful if it waits up to the given timeout. Assuming that a timeout of 0 can be used to test if the process is alive then maybe isAlive is no required. -Alan. From Alan.Bateman at oracle.com Wed Apr 18 18:05:34 2012 From: Alan.Bateman at oracle.com (Alan Bateman) Date: Wed, 18 Apr 2012 19:05:34 +0100 Subject: Replace the static error string in ZIP_Put_In_Cache0 with on stack memory In-Reply-To: <4F8EBB49.2@oracle.com> References: <4F82B361.4080806@oracle.com> <4F83EB02.7050708@oracle.com> <4F85E4E1.3040906@oracle.com> <4F869143.1060101@oracle.com> <4F8CD9E3.4040401@oracle.com> <4F8E2A64.5020904@oracle.com> <4F8E3FDE.9010400@oracle.com> <4F8EBB49.2@oracle.com> Message-ID: <4F8F026E.8090903@oracle.com> On 18/04/2012 14:02, David Holmes wrote: > On 18/04/2012 10:23 PM, Sean Chou wrote: >> Hi David, Alan, >> >> So is the patch acceptable ? > > There is still the matter of the unexpected NULL if strdup fails. I'd > need to see the clients for this code to see how they handle failure. > My concern is the case where the caller sees a NULL return which > indicates an error, and so accesses the msg and now potentially hits > another NULL. It's unlikely but ... I looked through the usages and nothing obvious jumps out. HotSpot will invoke ZIP_Open and that now returns a fixed string in the event of a failure. The library code opens the zip file directly and then uses ZIP_Put_In_Cache0 which seems to be handling this case. -Alan. From rob.mckenna at oracle.com Wed Apr 18 18:15:46 2012 From: rob.mckenna at oracle.com (Rob McKenna) Date: Wed, 18 Apr 2012 19:15:46 +0100 Subject: review request: 4244896: (process) Provide System.getPid(), System.killProcess(String pid) In-Reply-To: References: <4F861847.5080308@oracle.com> <4F869AD6.7010903@oracle.com>, <4F8D849E.8090607@oracle.com> Message-ID: <4F8F04D2.3030101@oracle.com> Eesh, thanks for spotting that Jason. New webrev will be incoming soon. -Rob On 18/04/12 14:44, Jason Mehrens wrote: > Rob, > > It looks like waitFor is calling Object.wait(long) without owning this > objects monitor. If I pass Long.MAX_VALUE to waitFor, shouldn't > waitFor return if the early if the process ends? > > Jason > > > Date: Tue, 17 Apr 2012 15:56:30 +0100 > > From: rob.mckenna at oracle.com > > To: Alan.Bateman at oracle.com > > Subject: Re: review request: 4244896: (process) Provide > System.getPid(), System.killProcess(String pid) > > CC: core-libs-dev at openjdk.java.net > > > > New webrev at: > > > > http://cr.openjdk.java.net/~robm/4244896/webrev.01/ > > > > Differences: > > - implemented Process.waitFor(long timeout). I figured I'd throw it in > > and let you decide if you want to keep it / replace isAlive. > > - implemented defaults in Process.java > > - destroyForcibly now returns the Process object > > - Updated documentation > > - Added @Override to all new overrides. > > - Fixed long line in UNIXProcess_md.c consistent with other > functions in > > that file. > > - Replaced WaitForSingleObject with GetExitCodeProcess: given the > > concerns raised it seems to make more sense to leave users who return > > STILL_ACTIVE as an error code on their own. > > - Test updated to allow for proper execution of shell script. > > > > -Rob > > > > On 12/04/12 10:05, Alan Bateman wrote: > > > On 12/04/2012 00:48, Rob McKenna wrote: > > >> Hi folks, > > >> > > >> I'm hoping for some feedback on the above. Webrev: > > >> > > >> http://cr.openjdk.java.net/~robm/4244896/webrev.00/ > > > Thanks for taking this one on, a destroyForcibly is really useful to > > > have (destroy was always misleading given that that is was actually a > > > SIGTERM). The isAlive is also useful, another choice would be a > > > waitFor that takes a timeout. > > > > > > As this patch adds two abstract methods it means there will be a > > > source compatibility issue. Process has been in the platform since > > > JDK1.0 so it likely there are other implementation, perhaps mocked. > > > For destroyForcibly then a reasonable default could invoke the > > > existing destroy but this would need to be specified. A possible > > > default for isAlive is to invoke exitValue and mask the IAE when it > > > hasn't terminated. > > > > > > On the javadoc then destroyForcibly needs to specify the return > value, > > > I think I missed this in the original patch that I gave you off-list. > > > Having it return the Process is very useful as it allows for method > > > invocation chaining, exitCode = p.destroyForcibly().waitFor(). I also > > > think destroyForcibly needs to set expectation that the process may > > > not terminate immediately (isAlive might still return true for a > brief > > > period for example). > > > > > > The duplicate code in UNIXProcess.java.* is a reminder that we could > > > combine the common code into something like a private package > > > AbstractUNIXPorcess that would be extended by UNIXProcess, not for > > > this patch of course. > > > > > > Looks like there is inconsistent use of @Override, you've added it to > > > the isAlive implementation but not the others. > > > > > > Looks like UNIXProcess_md.c is straying beyond 80c so you might want > > > to move the force parameter to the next line. > > > > > > Overall I think the implementation looks okay but one thing to think > > > about is errors, WaitForSingleObject can fail with other errors, the > > > return from kill is not checked. > > > > > > I don't have time to study the test is detail just now but I suspect > > > invoking "./ProcessKillTest.sh" will need to change as the script > will > > > be in test.src and may not have execute permission. Also I see tests > > > for specific exit codes which may be problematic (and will need to be > > > updated for MacOSX). For isAlive then it may be better to test it by > > > adding to existing tests. > > > > > > -Alan. > > > > > > From jim.gish at oracle.com Wed Apr 18 19:15:09 2012 From: jim.gish at oracle.com (Jim Gish) Date: Wed, 18 Apr 2012 15:15:09 -0400 Subject: RFR: 7160714 - Strange or obsolete @see tags in some exception java.util javadoc Message-ID: <4F8F12BD.2030608@oracle.com> Description: just a trivial change to add in Iterator#next() as a @see reference (Alan and I discussed the possibilities here of completeness vs brevity, and we opted for brevity. There are actually other uses, particularly in Deque , and Queue but thought it best to keep it simple) Patch: diff -r 00f5665ee0ea src/share/classes/java/util/NoSuchElementException.java --- a/src/share/classes/java/util/NoSuchElementException.java Tue Apr 17 09:30:29 2012 -0400 +++ b/src/share/classes/java/util/NoSuchElementException.java Wed Apr 18 15:07:49 2012 -0400 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1994, 2008, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 1994, 2008, 2012 Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -26,13 +26,12 @@ package java.util; /** - * Thrown by the nextElement method of an - * Enumeration to indicate that there are no more - * elements in the enumeration. + * Thrown by various accessor methods to indicate that the element being requested + * does not exist. * * @author unascribed - * @see java.util.Enumeration * @see java.util.Enumeration#nextElement() + * @see java.util.Iterator#next() * @since JDK1.0 */ public Strange or obsolete @see tags in some exception java.util javadoc Thanks, Jim From jim.gish at oracle.com Wed Apr 18 19:33:28 2012 From: jim.gish at oracle.com (Jim Gish) Date: Wed, 18 Apr 2012 15:33:28 -0400 Subject: RFR: 7160725 - Strange or obsolete @see tags in some exception java.lang javadoc Message-ID: <4F8F1708.30205@oracle.com> Description: Another trivial javadoc update - fixed existing @see ref and added a few more representative of the exception usage Patch: diff -r 00f5665ee0ea src/share/classes/java/lang/IllegalArgumentException.java --- a/src/share/classes/java/lang/IllegalArgumentException.java Tue Apr 17 09:30:29 2012 -0400 +++ b/src/share/classes/java/lang/IllegalArgumentException.java Wed Apr 18 15:28:26 2012 -0400 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1994, 2003, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 1994, 2003, 2012 Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -30,7 +30,10 @@ * inappropriate argument. * * @author unascribed + * @see java.lang.Enum#valueOf(Class, String) * @see java.lang.Thread#setPriority(int) + * @see java.lang.Runtime#exec(String) + * @see java.lang.System#getProperty(String) * @since JDK1.0 */ public diff -r 00f5665ee0ea src/share/classes/java/lang/NumberFormatException.java --- a/src/share/classes/java/lang/NumberFormatException.java Tue Apr 17 09:30:29 2012 -0400 +++ b/src/share/classes/java/lang/NumberFormatException.java Wed Apr 18 15:28:26 2012 -0400 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1994, 2001, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 1994, 2001, 2012 Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -31,7 +31,8 @@ * have the appropriate format. * * @author unascribed - * @see java.lang.Integer#toString() + * @see java.lang.Float#Float(String) + * @see java.lang.Integer#parseInt(String) * @since JDK1.0 */ public Thanks, Jim Gish From jim.gish at oracle.com Wed Apr 18 19:47:39 2012 From: jim.gish at oracle.com (Jim Gish) Date: Wed, 18 Apr 2012 15:47:39 -0400 Subject: RFR: 7160725 - Strange or obsolete @see tags in some exception java.lang javadoc In-Reply-To: <4F8F1708.30205@oracle.com> References: <4F8F1708.30205@oracle.com> Message-ID: <4F8F1A5B.5020005@oracle.com> I've updated the copyrights to just have first and current year. Jim On 04/18/2012 03:33 PM, Jim Gish wrote: > Description: > > Another trivial javadoc update - fixed existing @see ref and added a > few more representative of the exception usage > > Patch: > > diff -r 00f5665ee0ea > src/share/classes/java/lang/IllegalArgumentException.java > --- a/src/share/classes/java/lang/IllegalArgumentException.java Tue > Apr 17 09:30:29 2012 -0400 > +++ b/src/share/classes/java/lang/IllegalArgumentException.java Wed > Apr 18 15:28:26 2012 -0400 > @@ -1,5 +1,5 @@ > /* > - * Copyright (c) 1994, 2003, Oracle and/or its affiliates. All rights > reserved. > + * Copyright (c) 1994, 2003, 2012 Oracle and/or its affiliates. All > rights reserved. > * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. > * > * This code is free software; you can redistribute it and/or modify it > @@ -30,7 +30,10 @@ > * inappropriate argument. > * > * @author unascribed > + * @see java.lang.Enum#valueOf(Class, String) > * @see java.lang.Thread#setPriority(int) > + * @see java.lang.Runtime#exec(String) > + * @see java.lang.System#getProperty(String) > * @since JDK1.0 > */ > public > > diff -r 00f5665ee0ea > src/share/classes/java/lang/NumberFormatException.java > --- a/src/share/classes/java/lang/NumberFormatException.java Tue > Apr 17 09:30:29 2012 -0400 > +++ b/src/share/classes/java/lang/NumberFormatException.java Wed > Apr 18 15:28:26 2012 -0400 > @@ -1,5 +1,5 @@ > /* > - * Copyright (c) 1994, 2001, Oracle and/or its affiliates. All rights > reserved. > + * Copyright (c) 1994, 2001, 2012 Oracle and/or its affiliates. All > rights reserved. > * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. > * > * This code is free software; you can redistribute it and/or modify it > @@ -31,7 +31,8 @@ > * have the appropriate format. > * > * @author unascribed > - * @see java.lang.Integer#toString() > + * @see java.lang.Float#Float(String) > + * @see java.lang.Integer#parseInt(String) > * @since JDK1.0 > */ > public > > Thanks, > Jim Gish From jim.gish at oracle.com Wed Apr 18 19:48:07 2012 From: jim.gish at oracle.com (Jim Gish) Date: Wed, 18 Apr 2012 15:48:07 -0400 Subject: RFR: 7160714 - Strange or obsolete @see tags in some exception java.util javadoc In-Reply-To: <4F8F12BD.2030608@oracle.com> References: <4F8F12BD.2030608@oracle.com> Message-ID: <4F8F1A77.1010602@oracle.com> I've updated the copyrights to just have first and current year. Jim On 04/18/2012 03:15 PM, Jim Gish wrote: > Description: just a trivial change to add in Iterator#next() as a > @see reference > > (Alan and I discussed the possibilities here of completeness vs > brevity, and we opted for brevity. There are actually other uses, > particularly in Deque , and Queue but thought it best to keep it simple) > > Patch: > > diff -r 00f5665ee0ea > src/share/classes/java/util/NoSuchElementException.java > --- a/src/share/classes/java/util/NoSuchElementException.java Tue > Apr 17 09:30:29 2012 -0400 > +++ b/src/share/classes/java/util/NoSuchElementException.java Wed > Apr 18 15:07:49 2012 -0400 > @@ -1,5 +1,5 @@ > /* > - * Copyright (c) 1994, 2008, Oracle and/or its affiliates. All rights > reserved. > + * Copyright (c) 1994, 2008, 2012 Oracle and/or its affiliates. All > rights reserved. > * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. > * > * This code is free software; you can redistribute it and/or modify it > @@ -26,13 +26,12 @@ > package java.util; > > /** > - * Thrown by the nextElement method of an > - * Enumeration to indicate that there are no more > - * elements in the enumeration. > + * Thrown by various accessor methods to indicate that the element > being requested > + * does not exist. > * > * @author unascribed > - * @see java.util.Enumeration > * @see java.util.Enumeration#nextElement() > + * @see java.util.Iterator#next() > * @since JDK1.0 > */ > public > Strange or obsolete @see tags in some exception java.util javadoc > > Thanks, > Jim From mike.duigou at oracle.com Wed Apr 18 19:49:55 2012 From: mike.duigou at oracle.com (Mike Duigou) Date: Wed, 18 Apr 2012 12:49:55 -0700 Subject: RFR: 7160714 - Strange or obsolete @see tags in some exception java.util javadoc In-Reply-To: <4F8F12BD.2030608@oracle.com> References: <4F8F12BD.2030608@oracle.com> Message-ID: <852EC4A2-354E-4C9F-A95D-0A5EA2D4D0CD@oracle.com> Looks good with the copyright change. Mike On Apr 18 2012, at 12:15 , Jim Gish wrote: > Description: just a trivial change to add in Iterator#next() as a @see reference > > (Alan and I discussed the possibilities here of completeness vs brevity, and we opted for brevity. There are actually other uses, particularly in Deque , and Queue but thought it best to keep it simple) > > Patch: > > diff -r 00f5665ee0ea src/share/classes/java/util/NoSuchElementException.java > --- a/src/share/classes/java/util/NoSuchElementException.java Tue Apr 17 09:30:29 2012 -0400 > +++ b/src/share/classes/java/util/NoSuchElementException.java Wed Apr 18 15:07:49 2012 -0400 > @@ -1,5 +1,5 @@ > /* > - * Copyright (c) 1994, 2008, Oracle and/or its affiliates. All rights reserved. > + * Copyright (c) 1994, 2008, 2012 Oracle and/or its affiliates. All rights reserved. > * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. > * > * This code is free software; you can redistribute it and/or modify it > @@ -26,13 +26,12 @@ > package java.util; > > /** > - * Thrown by the nextElement method of an > - * Enumeration to indicate that there are no more > - * elements in the enumeration. > + * Thrown by various accessor methods to indicate that the element being requested > + * does not exist. > * > * @author unascribed > - * @see java.util.Enumeration > * @see java.util.Enumeration#nextElement() > + * @see java.util.Iterator#next() > * @since JDK1.0 > */ > public > Strange or obsolete @see tags in some exception java.util javadoc > > Thanks, > Jim From darryl.mocek at oracle.com Wed Apr 18 20:39:29 2012 From: darryl.mocek at oracle.com (Darryl Mocek) Date: Wed, 18 Apr 2012 13:39:29 -0700 Subject: Code Review Request - Bug #6948101 & 7142596: RMI JPRT tests are failing In-Reply-To: <4F8D3127.2060805@oracle.com> References: <4F88BA9F.2000600@oracle.com> <4F89A1F5.6090308@oracle.com> <4F8C6645.3030708@oracle.com> <4F8D3127.2060805@oracle.com> Message-ID: <4F8F2681.7080406@oracle.com> On Tue 17 Apr 2012 02:00:23 AM PDT, Alan Bateman wrote: > > On 16/04/2012 19:34, Darryl Mocek wrote: >> >> Ah, yes, with -agentvm specified, many tests fail. I'll have to add >> java/rmi and sun/rmi back to the list of tests which must be run in >> othervm mode and I should probably add back othervm to the tests I >> removed it from. At least with the port conflict fix, we can run the >> tests concurrently and they will run much faster. > > Yes, it's a good first step and I look forward to getting much better > through-put of these tests. > > >> >>> >>> >>> I see the logic in TestLibrary to choose a random port and I'm just >>> wondered if you considered doing LocaleRegistry.createRegistry(0) so >>> that the registry binds to an ephemeral port. It would mean that >>> TestLibrary would need to get to the transport endpoint and port but >>> it would avoid having to try multiple ports. >> >> I would have like to use LocaleRegistry.createRegistry(0), but I >> don't see a way to get the port number once the registry is created, >> which is required. I originally tried creating a TestLocaleRegistry >> which extends LocateRegistry, with a getPort() method, but this >> didn't work either. > > I don't think there is an API to get the endpoint (Peter Jones, any > ideas?) so it may require TestLibrary to use reflection or sun.* code > to get it. Another sleazy suggestion is that it's in toString output > and TestLibrary would provide method to get the port that wouldn't > require all the tests to depend on it. Brilliant! I didn't realize Registry.toString included the port number. However, I did in fact find a way to get the port through the API's (see below), although I think toString is more efficient. I'm pretty sure I can get rid of the instanceof checks. Darryl public static int getRegistryPort(Registry registry) { int port = -1; if (registry instanceof RegistryImpl) { System.out.println("registry instanceof RegistryImpl"); RemoteRef remoteRef = ((RegistryImpl)registry).getRef(); if (remoteRef instanceof UnicastServerRef) { System.out.println("remoteRef instanceof UnicastServerRef"); LiveRef liveRef = ((UnicastServerRef)remoteRef).getLiveRef(); try { Endpoint endpoint = liveRef.getChannel().getEndpoint(); if (endpoint instanceof TCPEndpoint) { TCPEndpoint tcpEndpoint = (TCPEndpoint) endpoint; port = tcpEndpoint.getPort(); } System.out.println("registry = " + registry); } catch (RemoteException ex) { Logger.getLogger(TestLibrary.class.getName()).log(Level.SEVERE, null, ex); } } } return port; } > > -Alan From david.holmes at oracle.com Thu Apr 19 00:05:52 2012 From: david.holmes at oracle.com (David Holmes) Date: Thu, 19 Apr 2012 10:05:52 +1000 Subject: review request: 4244896: (process) Provide System.getPid(), System.killProcess(String pid) In-Reply-To: References: <4F861847.5080308@oracle.com> <4F869AD6.7010903@oracle.com>, <4F8D849E.8090607@oracle.com> Message-ID: <4F8F56E0.6020009@oracle.com> On 18/04/2012 11:44 PM, Jason Mehrens wrote: > > Rob, > > It looks like waitFor is calling Object.wait(long) without owning this objects monitor. If I pass Long.MAX_VALUE to waitFor, shouldn't waitFor return if the early if the process ends? Also waitFor doesn't call wait() under the guard of a looping predicate so it will suffer from lost signals and potentially spurious wakeups. I also don't see anything calling notify[All] to indicate the process has now terminated. It would appear that wait(timeout) is being used as a sleep mechanism and that is wrong on a number of levels. David > Jason > > >> Date: Tue, 17 Apr 2012 15:56:30 +0100 >> From: rob.mckenna at oracle.com >> To: Alan.Bateman at oracle.com >> Subject: Re: review request: 4244896: (process) Provide System.getPid(), System.killProcess(String pid) >> CC: core-libs-dev at openjdk.java.net >> >> New webrev at: >> >> http://cr.openjdk.java.net/~robm/4244896/webrev.01/ >> >> Differences: >> - implemented Process.waitFor(long timeout). I figured I'd throw it in >> and let you decide if you want to keep it / replace isAlive. >> - implemented defaults in Process.java >> - destroyForcibly now returns the Process object >> - Updated documentation >> - Added @Override to all new overrides. >> - Fixed long line in UNIXProcess_md.c consistent with other functions in >> that file. >> - Replaced WaitForSingleObject with GetExitCodeProcess: given the >> concerns raised it seems to make more sense to leave users who return >> STILL_ACTIVE as an error code on their own. >> - Test updated to allow for proper execution of shell script. >> >> -Rob >> >> On 12/04/12 10:05, Alan Bateman wrote: >>> On 12/04/2012 00:48, Rob McKenna wrote: >>>> Hi folks, >>>> >>>> I'm hoping for some feedback on the above. Webrev: >>>> >>>> http://cr.openjdk.java.net/~robm/4244896/webrev.00/ >>> Thanks for taking this one on, a destroyForcibly is really useful to >>> have (destroy was always misleading given that that is was actually a >>> SIGTERM). The isAlive is also useful, another choice would be a >>> waitFor that takes a timeout. >>> >>> As this patch adds two abstract methods it means there will be a >>> source compatibility issue. Process has been in the platform since >>> JDK1.0 so it likely there are other implementation, perhaps mocked. >>> For destroyForcibly then a reasonable default could invoke the >>> existing destroy but this would need to be specified. A possible >>> default for isAlive is to invoke exitValue and mask the IAE when it >>> hasn't terminated. >>> >>> On the javadoc then destroyForcibly needs to specify the return value, >>> I think I missed this in the original patch that I gave you off-list. >>> Having it return the Process is very useful as it allows for method >>> invocation chaining, exitCode = p.destroyForcibly().waitFor(). I also >>> think destroyForcibly needs to set expectation that the process may >>> not terminate immediately (isAlive might still return true for a brief >>> period for example). >>> >>> The duplicate code in UNIXProcess.java.* is a reminder that we could >>> combine the common code into something like a private package >>> AbstractUNIXPorcess that would be extended by UNIXProcess, not for >>> this patch of course. >>> >>> Looks like there is inconsistent use of @Override, you've added it to >>> the isAlive implementation but not the others. >>> >>> Looks like UNIXProcess_md.c is straying beyond 80c so you might want >>> to move the force parameter to the next line. >>> >>> Overall I think the implementation looks okay but one thing to think >>> about is errors, WaitForSingleObject can fail with other errors, the >>> return from kill is not checked. >>> >>> I don't have time to study the test is detail just now but I suspect >>> invoking "./ProcessKillTest.sh" will need to change as the script will >>> be in test.src and may not have execute permission. Also I see tests >>> for specific exit codes which may be problematic (and will need to be >>> updated for MacOSX). For isAlive then it may be better to test it by >>> adding to existing tests. >>> >>> -Alan. >>> >>> > From david.holmes at oracle.com Thu Apr 19 00:10:06 2012 From: david.holmes at oracle.com (David Holmes) Date: Thu, 19 Apr 2012 10:10:06 +1000 Subject: RFR: 7160714 - Strange or obsolete @see tags in some exception java.util javadoc In-Reply-To: <852EC4A2-354E-4C9F-A95D-0A5EA2D4D0CD@oracle.com> References: <4F8F12BD.2030608@oracle.com> <852EC4A2-354E-4C9F-A95D-0A5EA2D4D0CD@oracle.com> Message-ID: <4F8F57DE.9030001@oracle.com> On 19/04/2012 5:49 AM, Mike Duigou wrote: > Looks good with the copyright change. Agreed. Will need CCC request as well though. David ----- > Mike > > On Apr 18 2012, at 12:15 , Jim Gish wrote: > >> Description: just a trivial change to add in Iterator#next() as a @see reference >> >> (Alan and I discussed the possibilities here of completeness vs brevity, and we opted for brevity. There are actually other uses, particularly in Deque , and Queue but thought it best to keep it simple) >> >> Patch: >> >> diff -r 00f5665ee0ea src/share/classes/java/util/NoSuchElementException.java >> --- a/src/share/classes/java/util/NoSuchElementException.java Tue Apr 17 09:30:29 2012 -0400 >> +++ b/src/share/classes/java/util/NoSuchElementException.java Wed Apr 18 15:07:49 2012 -0400 >> @@ -1,5 +1,5 @@ >> /* >> - * Copyright (c) 1994, 2008, Oracle and/or its affiliates. All rights reserved. >> + * Copyright (c) 1994, 2008, 2012 Oracle and/or its affiliates. All rights reserved. >> * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. >> * >> * This code is free software; you can redistribute it and/or modify it >> @@ -26,13 +26,12 @@ >> package java.util; >> >> /** >> - * Thrown by thenextElement method of an >> - *Enumeration to indicate that there are no more >> - * elements in the enumeration. >> + * Thrown by various accessor methods to indicate that the element being requested >> + * does not exist. >> * >> * @author unascribed >> - * @see java.util.Enumeration >> * @see java.util.Enumeration#nextElement() >> + * @see java.util.Iterator#next() >> * @since JDK1.0 >> */ >> public >> Strange or obsolete @see tags in some exception java.util javadoc >> >> Thanks, >> Jim > From david.holmes at oracle.com Thu Apr 19 00:11:54 2012 From: david.holmes at oracle.com (David Holmes) Date: Thu, 19 Apr 2012 10:11:54 +1000 Subject: RFR: 7160725 - Strange or obsolete @see tags in some exception java.lang javadoc In-Reply-To: <4F8F1A5B.5020005@oracle.com> References: <4F8F1708.30205@oracle.com> <4F8F1A5B.5020005@oracle.com> Message-ID: <4F8F584A.6030006@oracle.com> Hi Jim, I guess I don't see the point here. There must be literally dozens of APIs that throw IllegalArgumentException, and a significant number that can throw NumberFormatError. What is so special about these selections? I'd argue for removing the old @see tags. David On 19/04/2012 5:47 AM, Jim Gish wrote: > I've updated the copyrights to just have first and current year. > > Jim > > On 04/18/2012 03:33 PM, Jim Gish wrote: >> Description: >> >> Another trivial javadoc update - fixed existing @see ref and added a >> few more representative of the exception usage >> >> Patch: >> >> diff -r 00f5665ee0ea >> src/share/classes/java/lang/IllegalArgumentException.java >> --- a/src/share/classes/java/lang/IllegalArgumentException.java Tue >> Apr 17 09:30:29 2012 -0400 >> +++ b/src/share/classes/java/lang/IllegalArgumentException.java Wed >> Apr 18 15:28:26 2012 -0400 >> @@ -1,5 +1,5 @@ >> /* >> - * Copyright (c) 1994, 2003, Oracle and/or its affiliates. All rights >> reserved. >> + * Copyright (c) 1994, 2003, 2012 Oracle and/or its affiliates. All >> rights reserved. >> * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. >> * >> * This code is free software; you can redistribute it and/or modify it >> @@ -30,7 +30,10 @@ >> * inappropriate argument. >> * >> * @author unascribed >> + * @see java.lang.Enum#valueOf(Class, String) >> * @see java.lang.Thread#setPriority(int) >> + * @see java.lang.Runtime#exec(String) >> + * @see java.lang.System#getProperty(String) >> * @since JDK1.0 >> */ >> public >> >> diff -r 00f5665ee0ea >> src/share/classes/java/lang/NumberFormatException.java >> --- a/src/share/classes/java/lang/NumberFormatException.java Tue Apr >> 17 09:30:29 2012 -0400 >> +++ b/src/share/classes/java/lang/NumberFormatException.java Wed Apr >> 18 15:28:26 2012 -0400 >> @@ -1,5 +1,5 @@ >> /* >> - * Copyright (c) 1994, 2001, Oracle and/or its affiliates. All rights >> reserved. >> + * Copyright (c) 1994, 2001, 2012 Oracle and/or its affiliates. All >> rights reserved. >> * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. >> * >> * This code is free software; you can redistribute it and/or modify it >> @@ -31,7 +31,8 @@ >> * have the appropriate format. >> * >> * @author unascribed >> - * @see java.lang.Integer#toString() >> + * @see java.lang.Float#Float(String) >> + * @see java.lang.Integer#parseInt(String) >> * @since JDK1.0 >> */ >> public >> >> Thanks, >> Jim Gish > From kumar.x.srinivasan at oracle.COM Thu Apr 19 00:36:59 2012 From: kumar.x.srinivasan at oracle.COM (Kumar Srinivasan) Date: Wed, 18 Apr 2012 17:36:59 -0700 Subject: Please review: 6981776: Pack200 must support -target 7 bytecodes / JSR-292 Message-ID: <4F8F5E2B.7030804@oracle.COM> Hi All, This has been a joint effort between John Rose and I to bring the pack200 implementation to support JSR-292 classfile format. The webrev is large, please let me know if you need extra time. http://cr.openjdk.java.net/~ksrini/6981776/webrev.0/ Thanks Kumar From david.holmes at oracle.com Thu Apr 19 00:53:20 2012 From: david.holmes at oracle.com (David Holmes) Date: Thu, 19 Apr 2012 10:53:20 +1000 Subject: Replace the static error string in ZIP_Put_In_Cache0 with on stack memory In-Reply-To: <4F8F026E.8090903@oracle.com> References: <4F82B361.4080806@oracle.com> <4F83EB02.7050708@oracle.com> <4F85E4E1.3040906@oracle.com> <4F869143.1060101@oracle.com> <4F8CD9E3.4040401@oracle.com> <4F8E2A64.5020904@oracle.com> <4F8E3FDE.9010400@oracle.com> <4F8EBB49.2@oracle.com> <4F8F026E.8090903@oracle.com> Message-ID: <4F8F6200.8090701@oracle.com> On 19/04/2012 4:05 AM, Alan Bateman wrote: > On 18/04/2012 14:02, David Holmes wrote: >> On 18/04/2012 10:23 PM, Sean Chou wrote: >>> Hi David, Alan, >>> >>> So is the patch acceptable ? >> >> There is still the matter of the unexpected NULL if strdup fails. I'd >> need to see the clients for this code to see how they handle failure. >> My concern is the case where the caller sees a NULL return which >> indicates an error, and so accesses the msg and now potentially hits >> another NULL. It's unlikely but ... > I looked through the usages and nothing obvious jumps out. HotSpot will > invoke ZIP_Open and that now returns a fixed string in the event of a > failure. The library code opens the zip file directly and then uses > ZIP_Put_In_Cache0 which seems to be handling this case. Yes looks like we only have two bits of client code here and ZipFile.c checks for NULL. Ok. David ----- > -Alan. From zhouyx at linux.vnet.ibm.com Thu Apr 19 08:05:16 2012 From: zhouyx at linux.vnet.ibm.com (Sean Chou) Date: Thu, 19 Apr 2012 16:05:16 +0800 Subject: Replace the static error string in ZIP_Put_In_Cache0 with on stack memory In-Reply-To: <4F8F6200.8090701@oracle.com> References: <4F82B361.4080806@oracle.com> <4F83EB02.7050708@oracle.com> <4F85E4E1.3040906@oracle.com> <4F869143.1060101@oracle.com> <4F8CD9E3.4040401@oracle.com> <4F8E2A64.5020904@oracle.com> <4F8E3FDE.9010400@oracle.com> <4F8EBB49.2@oracle.com> <4F8F026E.8090903@oracle.com> <4F8F6200.8090701@oracle.com> Message-ID: Thanks David and Alan, shall I find some one to commit it ? On Thu, Apr 19, 2012 at 8:53 AM, David Holmes wrote: > On 19/04/2012 4:05 AM, Alan Bateman wrote: > >> On 18/04/2012 14:02, David Holmes wrote: >> >>> On 18/04/2012 10:23 PM, Sean Chou wrote: >>> >>>> Hi David, Alan, >>>> >>>> So is the patch acceptable ? >>>> >>> >>> There is still the matter of the unexpected NULL if strdup fails. I'd >>> need to see the clients for this code to see how they handle failure. >>> My concern is the case where the caller sees a NULL return which >>> indicates an error, and so accesses the msg and now potentially hits >>> another NULL. It's unlikely but ... >>> >> I looked through the usages and nothing obvious jumps out. HotSpot will >> invoke ZIP_Open and that now returns a fixed string in the event of a >> failure. The library code opens the zip file directly and then uses >> ZIP_Put_In_Cache0 which seems to be handling this case. >> > > Yes looks like we only have two bits of client code here and ZipFile.c > checks for NULL. > > Ok. > > David > ----- > > -Alan. >> > -- Best Regards, Sean Chou From Alan.Bateman at oracle.com Thu Apr 19 10:09:59 2012 From: Alan.Bateman at oracle.com (Alan Bateman) Date: Thu, 19 Apr 2012 11:09:59 +0100 Subject: Replace the static error string in ZIP_Put_In_Cache0 with on stack memory In-Reply-To: References: <4F82B361.4080806@oracle.com> <4F83EB02.7050708@oracle.com> <4F85E4E1.3040906@oracle.com> <4F869143.1060101@oracle.com> <4F8CD9E3.4040401@oracle.com> <4F8E2A64.5020904@oracle.com> <4F8E3FDE.9010400@oracle.com> <4F8EBB49.2@oracle.com> <4F8F026E.8090903@oracle.com> <4F8F6200.8090701@oracle.com> Message-ID: <4F8FE477.8030506@oracle.com> On 19/04/2012 09:05, Sean Chou wrote: > > Thanks David and Alan, shall I find some one to commit it ? > I assume Charles or Neil will push it for you. If they aren't available then I should be able to find someone to sponsor this. -Alan. From Alan.Bateman at oracle.com Thu Apr 19 10:50:25 2012 From: Alan.Bateman at oracle.com (Alan Bateman) Date: Thu, 19 Apr 2012 11:50:25 +0100 Subject: Code Review Request - Bug #6948101 & 7142596: RMI JPRT tests are failing In-Reply-To: <4F8F2681.7080406@oracle.com> References: <4F88BA9F.2000600@oracle.com> <4F89A1F5.6090308@oracle.com> <4F8C6645.3030708@oracle.com> <4F8D3127.2060805@oracle.com> <4F8F2681.7080406@oracle.com> Message-ID: <4F8FEDF1.6060909@oracle.com> On 18/04/2012 21:39, Darryl Mocek wrote: > : > > Brilliant! I didn't realize Registry.toString included the port > number. However, I did in fact find a way to get the port through the > API's (see below), although I think toString is more efficient. I'm > pretty sure I can get rid of the instanceof checks. I don't have a strong opinion as to whether it uses toString or depends on sun.rmi.server.RegistryImpl. The main thing is that I think it will be a lot more reliable to bind to an ephemeral port when compared to find an unused port. Just so you know, I grabbed the patch from your webrev and tried it out, it was nice to see close to x4 improvement when running these tests with -concurrency:auto on an 4-core system. -Alan From Alan.Bateman at oracle.com Thu Apr 19 11:05:02 2012 From: Alan.Bateman at oracle.com (Alan Bateman) Date: Thu, 19 Apr 2012 12:05:02 +0100 Subject: review request: 4244896: (process) Provide System.getPid(), System.killProcess(String pid) In-Reply-To: <4F8F56E0.6020009@oracle.com> References: <4F861847.5080308@oracle.com> <4F869AD6.7010903@oracle.com>, <4F8D849E.8090607@oracle.com> <4F8F56E0.6020009@oracle.com> Message-ID: <4F8FF15E.9080408@oracle.com> On 19/04/2012 01:05, David Holmes wrote: > On 18/04/2012 11:44 PM, Jason Mehrens wrote: >> >> Rob, >> >> It looks like waitFor is calling Object.wait(long) without owning >> this objects monitor. If I pass Long.MAX_VALUE to waitFor, shouldn't >> waitFor return if the early if the process ends? > > Also waitFor doesn't call wait() under the guard of a looping > predicate so it will suffer from lost signals and potentially spurious > wakeups. I also don't see anything calling notify[All] to indicate the > process has now terminated. It would appear that wait(timeout) is > being used as a sleep mechanism and that is wrong on a number of levels. I assume waitFor(timout) will require 3 distinct implementations, one for Solaris/Linux/Mac, another for Windows, and a default implementations for Process implementations that exist outside of the JDK. It's likely the Solaris/Linux/Mac implementation will involve two threads, one to block in waitpid and the other to interrupt it via a signal if the timeout elapses before the child terminates. The Windows implementation should be trivial because it can be a timed wait. I assume the default implementation (which is what is being discussed here) will need to loop calling exitValue until the timeout elapses or the child terminates. Not very efficient but at least it won't be used when when creating Processes via Runtime.exec or ProcessBuilder. I think the question we need to consider is whether waitFor(timeout) is really needed. If it's something that it pushed out for another day then it brings up the question as to whether to include isAlive now or not (as waitFor without timeout gives us an isAlive equivalent too). -Alan. From david.holmes at oracle.com Thu Apr 19 11:35:15 2012 From: david.holmes at oracle.com (David Holmes) Date: Thu, 19 Apr 2012 21:35:15 +1000 Subject: RFR: 7103570 AtomicIntegerFieldUpdater does not work when SecurityManager is installed Message-ID: <4F8FF873.50301@oracle.com> http://cr.openjdk.java.net/~dholmes/7103570/webrev/ Basic fix is to call getDeclaredField() inside a doPrivileged block. In addition the call to checkPackageAccess is now conditional - it allows for, for example, a class in sun.misc to create a field updater for another class in sun.misc. Finally the @throws spec for newUpdater has been expanded to say: @throws RuntimeException with a nested reflection-based exception if the class does not hold field or is the wrong type, + or the field is inaccessible to the caller according to Java language + access control This last part requires CCC approval which I will initiate. I have a glitch with running the test under jtreg but hopefully that will get sorted soon (jtreg fails if a security manager is installed). Thanks, David Holmes ------------ From alan.bateman at oracle.com Thu Apr 19 13:16:10 2012 From: alan.bateman at oracle.com (alan.bateman at oracle.com) Date: Thu, 19 Apr 2012 13:16:10 +0000 Subject: hg: jdk8/tl/jdk: 7162262: (fs) Typo in java.nio.file.Path class description Message-ID: <20120419131635.B1D2E47178@hg.openjdk.java.net> Changeset: 7b023213681c Author: psandoz Date: 2012-04-19 14:05 +0100 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/7b023213681c 7162262: (fs) Typo in java.nio.file.Path class description Reviewed-by: alanb ! src/share/classes/java/nio/file/Path.java From paul.sandoz at oracle.com Thu Apr 19 13:53:14 2012 From: paul.sandoz at oracle.com (Paul Sandoz) Date: Thu, 19 Apr 2012 15:53:14 +0200 Subject: RFR: 7103570 AtomicIntegerFieldUpdater does not work when SecurityManager is installed In-Reply-To: <4F8FF873.50301@oracle.com> References: <4F8FF873.50301@oracle.com> Message-ID: Hi David, I think you can retain the same exception throwing behavior (plus no casts are required to Field) as before by doing: try { field = AccessController.doPrivileged(new PriviledgedExceptionAction() { public Field run() throws NoSuchFieldException { return tclass.getDeclaredField(fieldName); } } } catch (PrivilegedActionException e) { throw (NoSuchFieldException)e.getException(); } Thus avoiding a NoSuchFieldException being nested RuntimeException which is further nested in a RuntimeException. Paul. On Apr 19, 2012, at 1:35 PM, David Holmes wrote: > http://cr.openjdk.java.net/~dholmes/7103570/webrev/ > > Basic fix is to call getDeclaredField() inside a doPrivileged block. > > In addition the call to checkPackageAccess is now conditional - it allows for, for example, a class in sun.misc to create a field updater for another class in sun.misc. > > Finally the @throws spec for newUpdater has been expanded to say: > > @throws RuntimeException with a nested reflection-based > exception if the class does not hold field or is the wrong type, > + or the field is inaccessible to the caller according to Java language > + access control > > This last part requires CCC approval which I will initiate. > > I have a glitch with running the test under jtreg but hopefully that will get sorted soon (jtreg fails if a security manager is installed). > > Thanks, > David Holmes > ------------ From jim.gish at oracle.com Thu Apr 19 14:41:40 2012 From: jim.gish at oracle.com (Jim Gish) Date: Thu, 19 Apr 2012 07:41:40 -0700 (PDT) Subject: RFR: 7160725 - Strange or obsolete @see tags in some exception java.lang javadoc Message-ID: Hi David, As I discussed with Alan, I don't think the conventions for @see in general are very clear. One could argue that there are a number of approaches that could be taken, among them: an exhaustive list, a representative list, or one simple example. A complete enumeration in many cases (such as IAE, and NFE) is ridiculously large (something like 2700 for IAE if I recall correctly). Listing them all doesn't make sense, of course. So, in this particular case I was opting for a representative sample of uses - choosing the ones below for being common or typical from a "nearby" package - as being exmplars. Of course, the principal point of this whole fix, was simply to give me a trivial change to run through to help learn the openjdk process, so unless the philosophy, policy, or convention is considered to be paramount, I'd prefer to "take a reasonable shot" at this, as I have done, and move on. Cheers, Jim ----- Original Message ----- From: david.holmes at oracle.com To: jim.gish at oracle.com Cc: core-libs-dev at openjdk.java.net Sent: Wednesday, April 18, 2012 8:12:43 PM GMT -05:00 US/Canada Eastern Subject: Re: RFR: 7160725 - Strange or obsolete @see tags in some exception java.lang javadoc Hi Jim, I guess I don't see the point here. There must be literally dozens of APIs that throw IllegalArgumentException, and a significant number that can throw NumberFormatError. What is so special about these selections? I'd argue for removing the old @see tags. David On 19/04/2012 5:47 AM, Jim Gish wrote: > I've updated the copyrights to just have first and current year. > > Jim > > On 04/18/2012 03:33 PM, Jim Gish wrote: >> Description: >> >> Another trivial javadoc update - fixed existing @see ref and added a >> few more representative of the exception usage >> >> Patch: >> >> diff -r 00f5665ee0ea >> src/share/classes/java/lang/IllegalArgumentException.java >> --- a/src/share/classes/java/lang/IllegalArgumentException.java Tue >> Apr 17 09:30:29 2012 -0400 >> +++ b/src/share/classes/java/lang/IllegalArgumentException.java Wed >> Apr 18 15:28:26 2012 -0400 >> @@ -1,5 +1,5 @@ >> /* >> - * Copyright (c) 1994, 2003, Oracle and/or its affiliates. All rights >> reserved. >> + * Copyright (c) 1994, 2003, 2012 Oracle and/or its affiliates. All >> rights reserved. >> * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. >> * >> * This code is free software; you can redistribute it and/or modify it >> @@ -30,7 +30,10 @@ >> * inappropriate argument. >> * >> * @author unascribed >> + * @see java.lang.Enum#valueOf(Class, String) >> * @see java.lang.Thread#setPriority(int) >> + * @see java.lang.Runtime#exec(String) >> + * @see java.lang.System#getProperty(String) >> * @since JDK1.0 >> */ >> public >> >> diff -r 00f5665ee0ea >> src/share/classes/java/lang/NumberFormatException.java >> --- a/src/share/classes/java/lang/NumberFormatException.java Tue Apr >> 17 09:30:29 2012 -0400 >> +++ b/src/share/classes/java/lang/NumberFormatException.java Wed Apr >> 18 15:28:26 2012 -0400 >> @@ -1,5 +1,5 @@ >> /* >> - * Copyright (c) 1994, 2001, Oracle and/or its affiliates. All rights >> reserved. >> + * Copyright (c) 1994, 2001, 2012 Oracle and/or its affiliates. All >> rights reserved. >> * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. >> * >> * This code is free software; you can redistribute it and/or modify it >> @@ -31,7 +31,8 @@ >> * have the appropriate format. >> * >> * @author unascribed >> - * @see java.lang.Integer#toString() >> + * @see java.lang.Float#Float(String) >> + * @see java.lang.Integer#parseInt(String) >> * @since JDK1.0 >> */ >> public >> >> Thanks, >> Jim Gish > From vincent.x.ryan at oracle.com Thu Apr 19 15:59:01 2012 From: vincent.x.ryan at oracle.com (vincent.x.ryan at oracle.com) Date: Thu, 19 Apr 2012 15:59:01 +0000 Subject: hg: jdk8/tl/jdk: 7162823: Modify the list of excluded tests (ProblemList Message-ID: <20120419155911.13B734717D@hg.openjdk.java.net> Changeset: 404c8e097ae9 Author: vinnie Date: 2012-04-19 16:58 +0100 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/404c8e097ae9 7162823: Modify the list of excluded tests (ProblemList Reviewed-by: alanb ! test/ProblemList.txt From sean.coffey at oracle.com Thu Apr 19 17:46:00 2012 From: sean.coffey at oracle.com (=?ISO-8859-1?Q?Se=E1n_Coffey?=) Date: Thu, 19 Apr 2012 18:46:00 +0100 Subject: RFR : 7161925 : sjava files in corba don't have copyright string and legal notice Message-ID: <4F904F58.6010907@oracle.com> This is a copyright patch that misha.bykov at oracle.com has asked to contribute. I'm pushing it to jdk8 for him. corba repo found to be lacking headers on 2 files. http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=7161925 http://cr.openjdk.java.net/~coffeys/webrev.7161925.jdk8/ regards, Sean. From sean.coffey at oracle.com Thu Apr 19 17:46:17 2012 From: sean.coffey at oracle.com (=?ISO-8859-1?Q?Se=E1n_Coffey?=) Date: Thu, 19 Apr 2012 18:46:17 +0100 Subject: RFR : 7161925 : sjava files in corba don't have copyright string and legal notice Message-ID: <4F904F69.8040709@oracle.com> This is a copyright patch that misha.bykov at oracle.com has asked to contribute. I'm pushing it to jdk8 for him. corba repo found to be lacking headers on 2 files. http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=7161925 http://cr.openjdk.java.net/~coffeys/webrev.7161925.jdk8/ regards, Sean. From kurchi.subhra.hazra at oracle.com Thu Apr 19 20:26:50 2012 From: kurchi.subhra.hazra at oracle.com (kurchi.subhra.hazra at oracle.com) Date: Thu, 19 Apr 2012 20:26:50 +0000 Subject: hg: jdk8/tl/jdk: 7162385: TEST_BUG: sun/net/www/protocol/jar/B4957695.java failing again Message-ID: <20120419202712.0732247191@hg.openjdk.java.net> Changeset: bc51d0569ccd Author: khazra Date: 2012-04-19 13:26 -0700 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/bc51d0569ccd 7162385: TEST_BUG: sun/net/www/protocol/jar/B4957695.java failing again Summary: Enable finding "foo1.jar" Reviewed-by: chegar ! test/sun/net/www/protocol/jar/B4957695.java From david.holmes at oracle.com Thu Apr 19 20:49:17 2012 From: david.holmes at oracle.com (David Holmes) Date: Fri, 20 Apr 2012 06:49:17 +1000 Subject: RFR: 7160725 - Strange or obsolete @see tags in some exception java.lang javadoc In-Reply-To: References: Message-ID: <4F907A4D.2060706@oracle.com> Hi Jim, On 20/04/2012 12:41 AM, Jim Gish wrote: > Hi David, > > As I discussed with Alan, I don't think the conventions for @see in general are very clear. One could argue that there are a number of approaches that could be taken, among them: an exhaustive list, a representative list, or one simple example. Or no example at all. I just don't think this changes the level of "strangeness" as originally reported - and it would be interesting to know what the reporter thinks of the suggested change. But this isn't worth extensive debate so if Alan and co are happy with this I'm not objecting. Cheers, David ----- > A complete enumeration in many cases (such as IAE, and NFE) is ridiculously large (something like 2700 for IAE if I recall correctly). Listing them all doesn't make sense, of course. So, in this particular case I was opting for a representative sample of uses - choosing the ones below for being common or typical from a "nearby" package - as being exmplars. > > Of course, the principal point of this whole fix, was simply to give me a trivial change to run through to help learn the openjdk process, so unless the philosophy, policy, or convention is considered to be paramount, I'd prefer to "take a reasonable shot" at this, as I have done, and move on. > > Cheers, > Jim > > ----- Original Message ----- > From: david.holmes at oracle.com > To: jim.gish at oracle.com > Cc: core-libs-dev at openjdk.java.net > Sent: Wednesday, April 18, 2012 8:12:43 PM GMT -05:00 US/Canada Eastern > Subject: Re: RFR: 7160725 - Strange or obsolete @see tags in some exception java.lang javadoc > > Hi Jim, > > I guess I don't see the point here. There must be literally dozens of > APIs that throw IllegalArgumentException, and a significant number that > can throw NumberFormatError. What is so special about these selections? > > I'd argue for removing the old @see tags. > > David > > On 19/04/2012 5:47 AM, Jim Gish wrote: >> I've updated the copyrights to just have first and current year. >> >> Jim >> >> On 04/18/2012 03:33 PM, Jim Gish wrote: >>> Description: >>> >>> Another trivial javadoc update - fixed existing @see ref and added a >>> few more representative of the exception usage >>> >>> Patch: >>> >>> diff -r 00f5665ee0ea >>> src/share/classes/java/lang/IllegalArgumentException.java >>> --- a/src/share/classes/java/lang/IllegalArgumentException.java Tue >>> Apr 17 09:30:29 2012 -0400 >>> +++ b/src/share/classes/java/lang/IllegalArgumentException.java Wed >>> Apr 18 15:28:26 2012 -0400 >>> @@ -1,5 +1,5 @@ >>> /* >>> - * Copyright (c) 1994, 2003, Oracle and/or its affiliates. All rights >>> reserved. >>> + * Copyright (c) 1994, 2003, 2012 Oracle and/or its affiliates. All >>> rights reserved. >>> * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. >>> * >>> * This code is free software; you can redistribute it and/or modify it >>> @@ -30,7 +30,10 @@ >>> * inappropriate argument. >>> * >>> * @author unascribed >>> + * @see java.lang.Enum#valueOf(Class, String) >>> * @see java.lang.Thread#setPriority(int) >>> + * @see java.lang.Runtime#exec(String) >>> + * @see java.lang.System#getProperty(String) >>> * @since JDK1.0 >>> */ >>> public >>> >>> diff -r 00f5665ee0ea >>> src/share/classes/java/lang/NumberFormatException.java >>> --- a/src/share/classes/java/lang/NumberFormatException.java Tue Apr >>> 17 09:30:29 2012 -0400 >>> +++ b/src/share/classes/java/lang/NumberFormatException.java Wed Apr >>> 18 15:28:26 2012 -0400 >>> @@ -1,5 +1,5 @@ >>> /* >>> - * Copyright (c) 1994, 2001, Oracle and/or its affiliates. All rights >>> reserved. >>> + * Copyright (c) 1994, 2001, 2012 Oracle and/or its affiliates. All >>> rights reserved. >>> * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. >>> * >>> * This code is free software; you can redistribute it and/or modify it >>> @@ -31,7 +31,8 @@ >>> * have the appropriate format. >>> * >>> * @author unascribed >>> - * @see java.lang.Integer#toString() >>> + * @see java.lang.Float#Float(String) >>> + * @see java.lang.Integer#parseInt(String) >>> * @since JDK1.0 >>> */ >>> public >>> >>> Thanks, >>> Jim Gish >> From david.holmes at oracle.com Fri Apr 20 00:07:45 2012 From: david.holmes at oracle.com (David Holmes) Date: Fri, 20 Apr 2012 10:07:45 +1000 Subject: RFR: 7103570 AtomicIntegerFieldUpdater does not work when SecurityManager is installed In-Reply-To: References: <4F8FF873.50301@oracle.com> Message-ID: <4F90A8D1.8010903@oracle.com> Thanks Paul that was a good set of suggestions. I had overlooked the change in the exceptions being thrown. Updated webrev: http://cr.openjdk.java.net/~dholmes/7103570/webrev.01/ I can't do quite exactly as you said because the NoSuchFieldException has to remain wrapped in one RuntimeException. David ----- On 19/04/2012 11:53 PM, Paul Sandoz wrote: > Hi David, > > I think you can retain the same exception throwing behavior (plus no > casts are required to Field) as before by doing: > > try { > field = AccessController.doPrivileged(new > PriviledgedExceptionAction() { > public Field run() throws NoSuchFieldException { > return tclass.getDeclaredField(fieldName); > } > } > } catch (PrivilegedActionException e) { > throw (NoSuchFieldException)e.getException(); > } > > Thus avoiding a NoSuchFieldException being nested RuntimeException which > is further nested in a RuntimeException. > > Paul. > > On Apr 19, 2012, at 1:35 PM, David Holmes wrote: > >> http://cr.openjdk.java.net/~dholmes/7103570/webrev/ >> >> Basic fix is to call getDeclaredField() inside a doPrivileged block. >> >> In addition the call to checkPackageAccess is now conditional - it >> allows for, for example, a class in sun.misc to create a field updater >> for another class in sun.misc. >> >> Finally the @throws spec for newUpdater has been expanded to say: >> >> @throws RuntimeException with a nested reflection-based >> exception if the class does not hold field or is the wrong type, >> + or the field is inaccessible to the caller according to Java language >> + access control >> >> This last part requires CCC approval which I will initiate. >> >> I have a glitch with running the test under jtreg but hopefully that >> will get sorted soon (jtreg fails if a security manager is installed). >> >> Thanks, >> David Holmes >> ------------ > From kurchi.subhra.hazra at oracle.com Fri Apr 20 01:12:09 2012 From: kurchi.subhra.hazra at oracle.com (kurchi.subhra.hazra at oracle.com) Date: Fri, 20 Apr 2012 01:12:09 +0000 Subject: hg: jdk8/tl/jdk: 7158636: InterfaceAddress.getBroadcast() returns invalid broadcast address on WLAN Message-ID: <20120420011227.E39EA4719A@hg.openjdk.java.net> Changeset: 715f50872ae7 Author: khazra Date: 2012-04-19 18:11 -0700 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/715f50872ae7 7158636: InterfaceAddress.getBroadcast() returns invalid broadcast address on WLAN Summary: Update Windows native code to infer WLAN interface type in Windows Vista and later Reviewed-by: chegar, alanb ! src/windows/native/java/net/NetworkInterface.c ! src/windows/native/java/net/NetworkInterface.h From rob.mckenna at oracle.com Fri Apr 20 01:33:19 2012 From: rob.mckenna at oracle.com (Rob McKenna) Date: Fri, 20 Apr 2012 02:33:19 +0100 Subject: review request: 4244896: (process) Provide System.getPid(), System.killProcess(String pid) In-Reply-To: <4F8FF15E.9080408@oracle.com> References: <4F861847.5080308@oracle.com> <4F869AD6.7010903@oracle.com>, <4F8D849E.8090607@oracle.com> <4F8F56E0.6020009@oracle.com> <4F8FF15E.9080408@oracle.com> Message-ID: <4F90BCDF.60200@oracle.com> I've uploaded another webrev to: http://cr.openjdk.java.net/~robm/4244896/webrev.02/ I plan to spend some time over the coming day or two beefing up the test for waitFor (right now its really geared towards destroyForcibly) so I won't guarantee its 100% quite yet. That said, I would like feedback on a couple of points before I proceed: 1) Alan suggested the use of System.nanoTime() so I altered waitFor(long) to allow for a TimeUnit parameter. UnixProcess objects can use Object.wait(long, int) but unfortunately WaitForMultipleObjects (on Windows) only works to millisecond precision. 2) As Alan noted, there is really no need for isAlive() if people are happy with the idea of waitFor(long, TimeUnit). I'd appreciate any feedback on this aspect of the fix. -Rob On 19/04/12 12:05, Alan Bateman wrote: > On 19/04/2012 01:05, David Holmes wrote: >> On 18/04/2012 11:44 PM, Jason Mehrens wrote: >>> >>> Rob, >>> >>> It looks like waitFor is calling Object.wait(long) without owning >>> this objects monitor. If I pass Long.MAX_VALUE to waitFor, >>> shouldn't waitFor return if the early if the process ends? >> >> Also waitFor doesn't call wait() under the guard of a looping >> predicate so it will suffer from lost signals and potentially >> spurious wakeups. I also don't see anything calling notify[All] to >> indicate the process has now terminated. It would appear that >> wait(timeout) is being used as a sleep mechanism and that is wrong on >> a number of levels. > I assume waitFor(timout) will require 3 distinct implementations, one > for Solaris/Linux/Mac, another for Windows, and a default > implementations for Process implementations that exist outside of the > JDK. > > It's likely the Solaris/Linux/Mac implementation will involve two > threads, one to block in waitpid and the other to interrupt it via a > signal if the timeout elapses before the child terminates. The Windows > implementation should be trivial because it can be a timed wait. > > I assume the default implementation (which is what is being discussed > here) will need to loop calling exitValue until the timeout elapses or > the child terminates. Not very efficient but at least it won't be used > when when creating Processes via Runtime.exec or ProcessBuilder. > > I think the question we need to consider is whether waitFor(timeout) > is really needed. If it's something that it pushed out for another day > then it brings up the question as to whether to include isAlive now or > not (as waitFor without timeout gives us an isAlive equivalent too). > > -Alan. > > > > From david.holmes at oracle.com Fri Apr 20 01:53:33 2012 From: david.holmes at oracle.com (David Holmes) Date: Fri, 20 Apr 2012 11:53:33 +1000 Subject: review request: 4244896: (process) Provide System.getPid(), System.killProcess(String pid) In-Reply-To: <4F90BCDF.60200@oracle.com> References: <4F861847.5080308@oracle.com> <4F869AD6.7010903@oracle.com>, <4F8D849E.8090607@oracle.com> <4F8F56E0.6020009@oracle.com> <4F8FF15E.9080408@oracle.com> <4F90BCDF.60200@oracle.com> Message-ID: <4F90C19D.3030509@oracle.com> Hi Rob, On 20/04/2012 11:33 AM, Rob McKenna wrote: > I've uploaded another webrev to: > > http://cr.openjdk.java.net/~robm/4244896/webrev.02/ > I'll take a look as soon as I have a chance but will be OOTO the rest of today. > I plan to spend some time over the coming day or two beefing up the test > for waitFor (right now its really geared towards destroyForcibly) so I > won't guarantee its 100% quite yet. That said, I would like feedback on > a couple of points before I proceed: > > 1) Alan suggested the use of System.nanoTime() so I altered > waitFor(long) to allow for a TimeUnit parameter. UnixProcess objects can > use Object.wait(long, int) but unfortunately WaitForMultipleObjects (on > Windows) only works to millisecond precision. Object.wait (like Thread.sleep) doesn't honour the nanosecond argument so there is no point trying to use it. David ----- > 2) As Alan noted, there is really no need for isAlive() if people are > happy with the idea of waitFor(long, TimeUnit). I'd appreciate any > feedback on this aspect of the fix. > > -Rob > > On 19/04/12 12:05, Alan Bateman wrote: >> On 19/04/2012 01:05, David Holmes wrote: >>> On 18/04/2012 11:44 PM, Jason Mehrens wrote: >>>> >>>> Rob, >>>> >>>> It looks like waitFor is calling Object.wait(long) without owning >>>> this objects monitor. If I pass Long.MAX_VALUE to waitFor, shouldn't >>>> waitFor return if the early if the process ends? >>> >>> Also waitFor doesn't call wait() under the guard of a looping >>> predicate so it will suffer from lost signals and potentially >>> spurious wakeups. I also don't see anything calling notify[All] to >>> indicate the process has now terminated. It would appear that >>> wait(timeout) is being used as a sleep mechanism and that is wrong on >>> a number of levels. >> I assume waitFor(timout) will require 3 distinct implementations, one >> for Solaris/Linux/Mac, another for Windows, and a default >> implementations for Process implementations that exist outside of the >> JDK. >> >> It's likely the Solaris/Linux/Mac implementation will involve two >> threads, one to block in waitpid and the other to interrupt it via a >> signal if the timeout elapses before the child terminates. The Windows >> implementation should be trivial because it can be a timed wait. >> >> I assume the default implementation (which is what is being discussed >> here) will need to loop calling exitValue until the timeout elapses or >> the child terminates. Not very efficient but at least it won't be used >> when when creating Processes via Runtime.exec or ProcessBuilder. >> >> I think the question we need to consider is whether waitFor(timeout) >> is really needed. If it's something that it pushed out for another day >> then it brings up the question as to whether to include isAlive now or >> not (as waitFor without timeout gives us an isAlive equivalent too). >> >> -Alan. >> >> >> >> From rob.mckenna at oracle.com Fri Apr 20 02:31:00 2012 From: rob.mckenna at oracle.com (Rob McKenna) Date: Fri, 20 Apr 2012 03:31:00 +0100 Subject: review request: 4244896: (process) Provide System.getPid(), System.killProcess(String pid) In-Reply-To: <4F90C19D.3030509@oracle.com> References: <4F861847.5080308@oracle.com> <4F869AD6.7010903@oracle.com>, <4F8D849E.8090607@oracle.com> <4F8F56E0.6020009@oracle.com> <4F8FF15E.9080408@oracle.com> <4F90BCDF.60200@oracle.com> <4F90C19D.3030509@oracle.com> Message-ID: <4F90CA64.8010507@oracle.com> Thanks David, I suspect Alan simply meant that it may be preferable to use System.nanoTime to measure the time elapsed in the default implementation as opposed to System.currentTimeMillis. I had forgotten about the lower resolution of the timer interrupt. I'll revert that aspect of the change. -Rob On 20/04/12 02:53, David Holmes wrote: > Hi Rob, > > On 20/04/2012 11:33 AM, Rob McKenna wrote: >> I've uploaded another webrev to: >> >> http://cr.openjdk.java.net/~robm/4244896/webrev.02/ >> > > I'll take a look as soon as I have a chance but will be OOTO the rest > of today. > >> I plan to spend some time over the coming day or two beefing up the test >> for waitFor (right now its really geared towards destroyForcibly) so I >> won't guarantee its 100% quite yet. That said, I would like feedback on >> a couple of points before I proceed: >> >> 1) Alan suggested the use of System.nanoTime() so I altered >> waitFor(long) to allow for a TimeUnit parameter. UnixProcess objects can >> use Object.wait(long, int) but unfortunately WaitForMultipleObjects (on >> Windows) only works to millisecond precision. > > Object.wait (like Thread.sleep) doesn't honour the nanosecond argument > so there is no point trying to use it. > > David > ----- > >> 2) As Alan noted, there is really no need for isAlive() if people are >> happy with the idea of waitFor(long, TimeUnit). I'd appreciate any >> feedback on this aspect of the fix. >> >> -Rob >> >> On 19/04/12 12:05, Alan Bateman wrote: >>> On 19/04/2012 01:05, David Holmes wrote: >>>> On 18/04/2012 11:44 PM, Jason Mehrens wrote: >>>>> >>>>> Rob, >>>>> >>>>> It looks like waitFor is calling Object.wait(long) without owning >>>>> this objects monitor. If I pass Long.MAX_VALUE to waitFor, shouldn't >>>>> waitFor return if the early if the process ends? >>>> >>>> Also waitFor doesn't call wait() under the guard of a looping >>>> predicate so it will suffer from lost signals and potentially >>>> spurious wakeups. I also don't see anything calling notify[All] to >>>> indicate the process has now terminated. It would appear that >>>> wait(timeout) is being used as a sleep mechanism and that is wrong on >>>> a number of levels. >>> I assume waitFor(timout) will require 3 distinct implementations, one >>> for Solaris/Linux/Mac, another for Windows, and a default >>> implementations for Process implementations that exist outside of the >>> JDK. >>> >>> It's likely the Solaris/Linux/Mac implementation will involve two >>> threads, one to block in waitpid and the other to interrupt it via a >>> signal if the timeout elapses before the child terminates. The Windows >>> implementation should be trivial because it can be a timed wait. >>> >>> I assume the default implementation (which is what is being discussed >>> here) will need to loop calling exitValue until the timeout elapses or >>> the child terminates. Not very efficient but at least it won't be used >>> when when creating Processes via Runtime.exec or ProcessBuilder. >>> >>> I think the question we need to consider is whether waitFor(timeout) >>> is really needed. If it's something that it pushed out for another day >>> then it brings up the question as to whether to include isAlive now or >>> not (as waitFor without timeout gives us an isAlive equivalent too). >>> >>> -Alan. >>> >>> >>> >>> From littlee at linux.vnet.ibm.com Fri Apr 20 08:12:20 2012 From: littlee at linux.vnet.ibm.com (littlee at linux.vnet.ibm.com) Date: Fri, 20 Apr 2012 08:12:20 +0000 Subject: hg: jdk8/tl/jdk: 7159982: ZipFile uses static for error message when malformed zip file encountered Message-ID: <20120420081240.0A518471C3@hg.openjdk.java.net> Changeset: c3905c1f5da7 Author: zhouyx Date: 2012-04-20 16:11 +0800 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/c3905c1f5da7 7159982: ZipFile uses static for error message when malformed zip file encountered Reviewed-by: alanb, dholmes ! src/share/native/java/util/zip/ZipFile.c ! src/share/native/java/util/zip/zip_util.c From littlee at linux.vnet.ibm.com Fri Apr 20 09:06:53 2012 From: littlee at linux.vnet.ibm.com (Charles Lee) Date: Fri, 20 Apr 2012 17:06:53 +0800 Subject: Replace the static error string in ZIP_Put_In_Cache0 with on stack memory In-Reply-To: References: <4F82B361.4080806@oracle.com> <4F83EB02.7050708@oracle.com> <4F85E4E1.3040906@oracle.com> <4F869143.1060101@oracle.com> <4F8CD9E3.4040401@oracle.com> <4F8E2A64.5020904@oracle.com> <4F8E3FDE.9010400@oracle.com> <4F8EBB49.2@oracle.com> <4F8F026E.8090903@oracle.com> <4F8F6200.8090701@oracle.com> Message-ID: <4F91272D.9010507@linux.vnet.ibm.com> On 04/19/2012 04:05 PM, Sean Chou wrote: > Thanks David and Alan, shall I find some one to commit it ? > > > On Thu, Apr 19, 2012 at 8:53 AM, David Holmeswrote: > >> On 19/04/2012 4:05 AM, Alan Bateman wrote: >> >>> On 18/04/2012 14:02, David Holmes wrote: >>> >>>> On 18/04/2012 10:23 PM, Sean Chou wrote: >>>> >>>>> Hi David, Alan, >>>>> >>>>> So is the patch acceptable ? >>>>> >>>> There is still the matter of the unexpected NULL if strdup fails. I'd >>>> need to see the clients for this code to see how they handle failure. >>>> My concern is the case where the caller sees a NULL return which >>>> indicates an error, and so accesses the msg and now potentially hits >>>> another NULL. It's unlikely but ... >>>> >>> I looked through the usages and nothing obvious jumps out. HotSpot will >>> invoke ZIP_Open and that now returns a fixed string in the event of a >>> failure. The library code opens the zip file directly and then uses >>> ZIP_Put_In_Cache0 which seems to be handling this case. >>> >> Yes looks like we only have two bits of client code here and ZipFile.c >> checks for NULL. >> >> Ok. >> >> David >> ----- >> >> -Alan. > Hi Sean, The patch is committed @ Changeset: c3905c1f5da7 Author: zhouyx Date: 2012-04-20 16:11 +0800 URL:http://hg.openjdk.java.net/jdk8/tl/jdk/rev/c3905c1f5da7 7159982: ZipFile uses static for error message when malformed zip file encountered Reviewed-by: alanb, dholmes Thank you all for reviewing this. -- Yours Charles From david.holmes at oracle.com Fri Apr 20 09:15:24 2012 From: david.holmes at oracle.com (David Holmes) Date: Fri, 20 Apr 2012 19:15:24 +1000 Subject: review request: 4244896: (process) Provide System.getPid(), System.killProcess(String pid) In-Reply-To: <4F90BCDF.60200@oracle.com> References: <4F861847.5080308@oracle.com> <4F869AD6.7010903@oracle.com>, <4F8D849E.8090607@oracle.com> <4F8F56E0.6020009@oracle.com> <4F8FF15E.9080408@oracle.com> <4F90BCDF.60200@oracle.com> Message-ID: <4F91292C.7020108@oracle.com> Rob, You can't use wait this way: 217 public synchronized boolean waitFor(long timeout, TimeUnit unit) 218 throws InterruptedException { 219 long millis = unit.toMillis(timeout); 220 long nanos = unit.toNanos(timeout) % (millis * 1000000); 221 222 if (hasExited) return true; 223 if (timeout <= 0) return false; 224 wait(millis, (int)nanos); 225 return hasExited; 226 } If this is just causing a delay then use Thread.sleep() (but don't have the method synchronized of course). If something is actually calling notifyAll (I don't see it) then the above suffers from lost wakeups. Either way a spurious wakeup means you will return earlier than expected. David ----- On 20/04/2012 11:33 AM, Rob McKenna wrote: > I've uploaded another webrev to: > > http://cr.openjdk.java.net/~robm/4244896/webrev.02/ > > > I plan to spend some time over the coming day or two beefing up the test > for waitFor (right now its really geared towards destroyForcibly) so I > won't guarantee its 100% quite yet. That said, I would like feedback on > a couple of points before I proceed: > > 1) Alan suggested the use of System.nanoTime() so I altered > waitFor(long) to allow for a TimeUnit parameter. UnixProcess objects can > use Object.wait(long, int) but unfortunately WaitForMultipleObjects (on > Windows) only works to millisecond precision. > > 2) As Alan noted, there is really no need for isAlive() if people are > happy with the idea of waitFor(long, TimeUnit). I'd appreciate any > feedback on this aspect of the fix. > > -Rob > > On 19/04/12 12:05, Alan Bateman wrote: >> On 19/04/2012 01:05, David Holmes wrote: >>> On 18/04/2012 11:44 PM, Jason Mehrens wrote: >>>> >>>> Rob, >>>> >>>> It looks like waitFor is calling Object.wait(long) without owning >>>> this objects monitor. If I pass Long.MAX_VALUE to waitFor, shouldn't >>>> waitFor return if the early if the process ends? >>> >>> Also waitFor doesn't call wait() under the guard of a looping >>> predicate so it will suffer from lost signals and potentially >>> spurious wakeups. I also don't see anything calling notify[All] to >>> indicate the process has now terminated. It would appear that >>> wait(timeout) is being used as a sleep mechanism and that is wrong on >>> a number of levels. >> I assume waitFor(timout) will require 3 distinct implementations, one >> for Solaris/Linux/Mac, another for Windows, and a default >> implementations for Process implementations that exist outside of the >> JDK. >> >> It's likely the Solaris/Linux/Mac implementation will involve two >> threads, one to block in waitpid and the other to interrupt it via a >> signal if the timeout elapses before the child terminates. The Windows >> implementation should be trivial because it can be a timed wait. >> >> I assume the default implementation (which is what is being discussed >> here) will need to loop calling exitValue until the timeout elapses or >> the child terminates. Not very efficient but at least it won't be used >> when when creating Processes via Runtime.exec or ProcessBuilder. >> >> I think the question we need to consider is whether waitFor(timeout) >> is really needed. If it's something that it pushed out for another day >> then it brings up the question as to whether to include isAlive now or >> not (as waitFor without timeout gives us an isAlive equivalent too). >> >> -Alan. >> >> >> >> From david.holmes at oracle.com Fri Apr 20 09:27:35 2012 From: david.holmes at oracle.com (David Holmes) Date: Fri, 20 Apr 2012 19:27:35 +1000 Subject: review request: 4244896: (process) Provide System.getPid(), System.killProcess(String pid) In-Reply-To: <4F91292C.7020108@oracle.com> References: <4F861847.5080308@oracle.com> <4F869AD6.7010903@oracle.com>, <4F8D849E.8090607@oracle.com> <4F8F56E0.6020009@oracle.com> <4F8FF15E.9080408@oracle.com> <4F90BCDF.60200@oracle.com> <4F91292C.7020108@oracle.com> Message-ID: <4F912C07.6030709@oracle.com> Correction: On 20/04/2012 7:15 PM, David Holmes wrote: > Rob, > > You can't use wait this way: > > 217 public synchronized boolean waitFor(long timeout, TimeUnit unit) > 218 throws InterruptedException { > 219 long millis = unit.toMillis(timeout); > 220 long nanos = unit.toNanos(timeout) % (millis * 1000000); > 221 > 222 if (hasExited) return true; > 223 if (timeout <= 0) return false; > 224 wait(millis, (int)nanos); > 225 return hasExited; > 226 } > > If this is just causing a delay then use Thread.sleep() (but don't have > the method synchronized of course). If something is actually calling > notifyAll (I don't see it) then the above suffers from lost wakeups. Sorry - There's no lost wakeup. David ----- > Either way a spurious wakeup means you will return earlier than expected. > > David > ----- > > On 20/04/2012 11:33 AM, Rob McKenna wrote: >> I've uploaded another webrev to: >> >> http://cr.openjdk.java.net/~robm/4244896/webrev.02/ >> >> >> I plan to spend some time over the coming day or two beefing up the test >> for waitFor (right now its really geared towards destroyForcibly) so I >> won't guarantee its 100% quite yet. That said, I would like feedback on >> a couple of points before I proceed: >> >> 1) Alan suggested the use of System.nanoTime() so I altered >> waitFor(long) to allow for a TimeUnit parameter. UnixProcess objects can >> use Object.wait(long, int) but unfortunately WaitForMultipleObjects (on >> Windows) only works to millisecond precision. >> >> 2) As Alan noted, there is really no need for isAlive() if people are >> happy with the idea of waitFor(long, TimeUnit). I'd appreciate any >> feedback on this aspect of the fix. >> >> -Rob >> >> On 19/04/12 12:05, Alan Bateman wrote: >>> On 19/04/2012 01:05, David Holmes wrote: >>>> On 18/04/2012 11:44 PM, Jason Mehrens wrote: >>>>> >>>>> Rob, >>>>> >>>>> It looks like waitFor is calling Object.wait(long) without owning >>>>> this objects monitor. If I pass Long.MAX_VALUE to waitFor, shouldn't >>>>> waitFor return if the early if the process ends? >>>> >>>> Also waitFor doesn't call wait() under the guard of a looping >>>> predicate so it will suffer from lost signals and potentially >>>> spurious wakeups. I also don't see anything calling notify[All] to >>>> indicate the process has now terminated. It would appear that >>>> wait(timeout) is being used as a sleep mechanism and that is wrong on >>>> a number of levels. >>> I assume waitFor(timout) will require 3 distinct implementations, one >>> for Solaris/Linux/Mac, another for Windows, and a default >>> implementations for Process implementations that exist outside of the >>> JDK. >>> >>> It's likely the Solaris/Linux/Mac implementation will involve two >>> threads, one to block in waitpid and the other to interrupt it via a >>> signal if the timeout elapses before the child terminates. The Windows >>> implementation should be trivial because it can be a timed wait. >>> >>> I assume the default implementation (which is what is being discussed >>> here) will need to loop calling exitValue until the timeout elapses or >>> the child terminates. Not very efficient but at least it won't be used >>> when when creating Processes via Runtime.exec or ProcessBuilder. >>> >>> I think the question we need to consider is whether waitFor(timeout) >>> is really needed. If it's something that it pushed out for another day >>> then it brings up the question as to whether to include isAlive now or >>> not (as waitFor without timeout gives us an isAlive equivalent too). >>> >>> -Alan. >>> >>> >>> >>> From paul.sandoz at oracle.com Fri Apr 20 12:11:47 2012 From: paul.sandoz at oracle.com (Paul Sandoz) Date: Fri, 20 Apr 2012 14:11:47 +0200 Subject: RFR: 7103570 AtomicIntegerFieldUpdater does not work when SecurityManager is installed In-Reply-To: <4F90A8D1.8010903@oracle.com> References: <4F8FF873.50301@oracle.com> <4F90A8D1.8010903@oracle.com> Message-ID: <77924FC0-7BFA-420B-BE6D-89DCD1468729@oracle.com> On Apr 20, 2012, at 2:07 AM, David Holmes wrote: > Thanks Paul that was a good set of suggestions. I had overlooked the change in the exceptions being thrown. > > Updated webrev: > > http://cr.openjdk.java.net/~dholmes/7103570/webrev.01/ > Looks fine to me. > I can't do quite exactly as you said because the NoSuchFieldException has to remain wrapped in one RuntimeException. > Yes, preferably just once :-) I was just indicating previously there were two levels of wrapping. Paul. > David > ----- > > On 19/04/2012 11:53 PM, Paul Sandoz wrote: >> Hi David, >> >> I think you can retain the same exception throwing behavior (plus no >> casts are required to Field) as before by doing: >> >> try { >> field = AccessController.doPrivileged(new >> PriviledgedExceptionAction() { >> public Field run() throws NoSuchFieldException { >> return tclass.getDeclaredField(fieldName); >> } >> } >> } catch (PrivilegedActionException e) { >> throw (NoSuchFieldException)e.getException(); >> } >> >> Thus avoiding a NoSuchFieldException being nested RuntimeException which >> is further nested in a RuntimeException. >> >> Paul. >> >> On Apr 19, 2012, at 1:35 PM, David Holmes wrote: >> >>> http://cr.openjdk.java.net/~dholmes/7103570/webrev/ >>> >>> Basic fix is to call getDeclaredField() inside a doPrivileged block. >>> >>> In addition the call to checkPackageAccess is now conditional - it >>> allows for, for example, a class in sun.misc to create a field updater >>> for another class in sun.misc. >>> >>> Finally the @throws spec for newUpdater has been expanded to say: >>> >>> @throws RuntimeException with a nested reflection-based >>> exception if the class does not hold field or is the wrong type, >>> + or the field is inaccessible to the caller according to Java language >>> + access control >>> >>> This last part requires CCC approval which I will initiate. >>> >>> I have a glitch with running the test under jtreg but hopefully that >>> will get sorted soon (jtreg fails if a security manager is installed). >>> >>> Thanks, >>> David Holmes >>> ------------ >> From jason_mehrens at hotmail.com Fri Apr 20 14:40:21 2012 From: jason_mehrens at hotmail.com (Jason Mehrens) Date: Fri, 20 Apr 2012 09:40:21 -0500 Subject: review request: 4244896: (process) Provide System.getPid(), System.killProcess(String pid) In-Reply-To: <4F90BCDF.60200@oracle.com> References: <4F861847.5080308@oracle.com>, <4F869AD6.7010903@oracle.com>, , <4F8D849E.8090607@oracle.com>, , <4F8F56E0.6020009@oracle.com>, <4F8FF15E.9080408@oracle.com>, <4F90BCDF.60200@oracle.com> Message-ID: Rob, > 2) As Alan noted, there is really no need for isAlive() if people are > happy with the idea of waitFor(long, TimeUnit). I'd appreciate any > feedback on this aspect of the fix. Process.isAlive is similar to Future.isDone(). I think isAlive fills that need to have a simple query method that doesn't throw exceptions. Jason From chris.hegarty at oracle.com Fri Apr 20 15:28:38 2012 From: chris.hegarty at oracle.com (Chris Hegarty) Date: Fri, 20 Apr 2012 16:28:38 +0100 Subject: RFR : 7161925 : sjava files in corba don't have copyright string and legal notice In-Reply-To: <4F904F58.6010907@oracle.com> References: <4F904F58.6010907@oracle.com> Message-ID: <4F9180A6.8030605@oracle.com> Clearly, looks fine ;-) -Chris. On 19/04/2012 18:46, Se?n Coffey wrote: > This is a copyright patch that misha.bykov at oracle.com has asked to > contribute. I'm pushing it to jdk8 for him. > > corba repo found to be lacking headers on 2 files. > > http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=7161925 > http://cr.openjdk.java.net/~coffeys/webrev.7161925.jdk8/ > > regards, > Sean. > From Alan.Bateman at oracle.com Fri Apr 20 16:09:35 2012 From: Alan.Bateman at oracle.com (Alan Bateman) Date: Fri, 20 Apr 2012 17:09:35 +0100 Subject: review request: 4244896: (process) Provide System.getPid(), System.killProcess(String pid) In-Reply-To: <4F90BCDF.60200@oracle.com> References: <4F861847.5080308@oracle.com> <4F869AD6.7010903@oracle.com>, <4F8D849E.8090607@oracle.com> <4F8F56E0.6020009@oracle.com> <4F8FF15E.9080408@oracle.com> <4F90BCDF.60200@oracle.com> Message-ID: <4F918A3F.1050109@oracle.com> On 20/04/2012 02:33, Rob McKenna wrote: > I've uploaded another webrev to: > > http://cr.openjdk.java.net/~robm/4244896/webrev.02/ > > > I plan to spend some time over the coming day or two beefing up the > test for waitFor (right now its really geared towards destroyForcibly) > so I won't guarantee its 100% quite yet. That said, I would like > feedback on a couple of points before I proceed: > > 1) Alan suggested the use of System.nanoTime() so I altered > waitFor(long) to allow for a TimeUnit parameter. UnixProcess objects > can use Object.wait(long, int) but unfortunately > WaitForMultipleObjects (on Windows) only works to millisecond precision. > > 2) As Alan noted, there is really no need for isAlive() if people are > happy with the idea of waitFor(long, TimeUnit). I'd appreciate any > feedback on this aspect of the fix. > > -Rob Sorry I haven't time to reply before now. I think destroyForcibly and isAlive are quite good. In destroyForcibly then "invokes destroy" should probably be a link or @code. The @since should be after the @return. For isAlive then I would suggest "Tests whether the subprocess is live" rather an "Returns a boolean ...". waitFor needs discussion. In 1 above you mentioned nanoTime but I think I was actually suggesting we need to decide if the method is old-style waitFor(timeout) or j.u.c/new-style waitFor(timeout,TimeUnit). As Process doesn't have timeouts already then I don't see a problem introducing the j.u.c style. I see you've also changed it to return a boolean too so overall the signature looks much better. I did question whether we need both isAlive and waitFor(0L,...) but Jason's comment make sense, you don't want to have exception handling to poll a sub-process. On the javadoc then I don't think it should mention that it polls every 100ms, that's too closterfobic and someone will likely want to test it too. On the implementation then it looks like Windows is right but the Solaris/Linux/Mac implementation doesn't wakeup if the sub-process terminates before the timeout has elapsed. If this proves too difficult then going forward with the destroyForcibly + isAlive, leaving waitFor to another day is fine. On the default implementation (pre-jdk8 Process implementations outside of the JDK) then I assume this method will misbehave with a large timeout (the addition will overflow). You could probably adjust the sleep timeout when the remaining time is <100ms. -Alan. From sean.coffey at oracle.com Fri Apr 20 16:33:05 2012 From: sean.coffey at oracle.com (sean.coffey at oracle.com) Date: Fri, 20 Apr 2012 16:33:05 +0000 Subject: hg: jdk8/tl/corba: 7161925: sjava files in corba don't have copyright string and legal notice Message-ID: <20120420163306.4E79C471C8@hg.openjdk.java.net> Changeset: 9cdcc0152526 Author: coffeys Date: 2012-04-20 17:34 +0100 URL: http://hg.openjdk.java.net/jdk8/tl/corba/rev/9cdcc0152526 7161925: sjava files in corba don't have copyright string and legal notice Reviewed-by: chegar Contributed-by: misha.bykov at oracle.com ! src/share/classes/com/sun/corba/se/impl/orbutil/DefineWrapper.sjava ! src/share/classes/com/sun/corba/se/impl/presentation/rmi/IDLTypesUtil_save.sjava From Roger.Riggs at oracle.com Fri Apr 20 17:05:25 2012 From: Roger.Riggs at oracle.com (Roger Riggs) Date: Fri, 20 Apr 2012 13:05:25 -0400 Subject: review request: 4244896: (process) Provide System.getPid(), System.killProcess(String pid) In-Reply-To: <4F918A3F.1050109@oracle.com> References: <4F861847.5080308@oracle.com> <4F869AD6.7010903@oracle.com>, <4F8D849E.8090607@oracle.com> <4F8F56E0.6020009@oracle.com> <4F8FF15E.9080408@oracle.com> <4F90BCDF.60200@oracle.com> <4F918A3F.1050109@oracle.com> Message-ID: <4F919755.5080007@oracle.com> Please avoid the cross package dependency on j.u.TimeUnit. Keeping mind that in Java ME we have to subset the API to make it fit and that forciblyDestroy is needed iit would be cleaner to avoid the dependency unless there will be a form of the method that uses only a fixed time unit (milliseconds). Roger On 04/20/2012 12:09 PM, Alan Bateman wrote: > On 20/04/2012 02:33, Rob McKenna wrote: >> I've uploaded another webrev to: >> >> http://cr.openjdk.java.net/~robm/4244896/webrev.02/ >> >> >> I plan to spend some time over the coming day or two beefing up the >> test for waitFor (right now its really geared towards >> destroyForcibly) so I won't guarantee its 100% quite yet. That said, >> I would like feedback on a couple of points before I proceed: >> >> 1) Alan suggested the use of System.nanoTime() so I altered >> waitFor(long) to allow for a TimeUnit parameter. UnixProcess objects >> can use Object.wait(long, int) but unfortunately >> WaitForMultipleObjects (on Windows) only works to millisecond precision. >> >> 2) As Alan noted, there is really no need for isAlive() if people are >> happy with the idea of waitFor(long, TimeUnit). I'd appreciate any >> feedback on this aspect of the fix. >> >> -Rob > Sorry I haven't time to reply before now. > > I think destroyForcibly and isAlive are quite good. In destroyForcibly > then "invokes destroy" should probably be a link or @code. The @since > should be after the @return. For isAlive then I would suggest "Tests > whether the subprocess is live" rather an "Returns a boolean ...". > > waitFor needs discussion. In 1 above you mentioned nanoTime but I > think I was actually suggesting we need to decide if the method is > old-style waitFor(timeout) or j.u.c/new-style > waitFor(timeout,TimeUnit). As Process doesn't have timeouts already > then I don't see a problem introducing the j.u.c style. I see you've > also changed it to return a boolean too so overall the signature looks > much better. I did question whether we need both isAlive and > waitFor(0L,...) but Jason's comment make sense, you don't want to have > exception handling to poll a sub-process. On the javadoc then I don't > think it should mention that it polls every 100ms, that's too > closterfobic and someone will likely want to test it too. > > On the implementation then it looks like Windows is right but the > Solaris/Linux/Mac implementation doesn't wakeup if the sub-process > terminates before the timeout has elapsed. If this proves too > difficult then going forward with the destroyForcibly + isAlive, > leaving waitFor to another day is fine. On the default implementation > (pre-jdk8 Process implementations outside of the JDK) then I assume > this method will misbehave with a large timeout (the addition will > overflow). You could probably adjust the sleep timeout when the > remaining time is <100ms. > > -Alan. > > From rob.mckenna at oracle.com Fri Apr 20 17:03:41 2012 From: rob.mckenna at oracle.com (Rob McKenna) Date: Fri, 20 Apr 2012 18:03:41 +0100 Subject: review request: 4244896: (process) Provide System.getPid(), System.killProcess(String pid) In-Reply-To: <4F918A3F.1050109@oracle.com> References: <4F861847.5080308@oracle.com> <4F869AD6.7010903@oracle.com>, <4F8D849E.8090607@oracle.com> <4F8F56E0.6020009@oracle.com> <4F8FF15E.9080408@oracle.com> <4F90BCDF.60200@oracle.com> <4F918A3F.1050109@oracle.com> Message-ID: <4F9196ED.9000100@oracle.com> Thanks a lot for the feedback folks. Jason, as Alan notes, that makes a lot of sense. Thanks for that. I'm planning to do the following over the next couple of days: - fix UnixProcess.waitFor(long, TimeUnit) as per David's mail. - alter the default waitFor(long, TimeUnit) comments/implementation as per Alan's comments. - put some more work into firming up the test. I'll get back to the alias with a new webrev when I'm done. One thing I would note is that there is a "process reaper" thread in the UnixProcess implementations that will call Process.notifyAll() when the process exits. -Rob On 20/04/12 17:09, Alan Bateman wrote: > On 20/04/2012 02:33, Rob McKenna wrote: >> I've uploaded another webrev to: >> >> http://cr.openjdk.java.net/~robm/4244896/webrev.02/ >> >> >> I plan to spend some time over the coming day or two beefing up the >> test for waitFor (right now its really geared towards >> destroyForcibly) so I won't guarantee its 100% quite yet. That said, >> I would like feedback on a couple of points before I proceed: >> >> 1) Alan suggested the use of System.nanoTime() so I altered >> waitFor(long) to allow for a TimeUnit parameter. UnixProcess objects >> can use Object.wait(long, int) but unfortunately >> WaitForMultipleObjects (on Windows) only works to millisecond precision. >> >> 2) As Alan noted, there is really no need for isAlive() if people are >> happy with the idea of waitFor(long, TimeUnit). I'd appreciate any >> feedback on this aspect of the fix. >> >> -Rob > Sorry I haven't time to reply before now. > > I think destroyForcibly and isAlive are quite good. In destroyForcibly > then "invokes destroy" should probably be a link or @code. The @since > should be after the @return. For isAlive then I would suggest "Tests > whether the subprocess is live" rather an "Returns a boolean ...". > > waitFor needs discussion. In 1 above you mentioned nanoTime but I > think I was actually suggesting we need to decide if the method is > old-style waitFor(timeout) or j.u.c/new-style > waitFor(timeout,TimeUnit). As Process doesn't have timeouts already > then I don't see a problem introducing the j.u.c style. I see you've > also changed it to return a boolean too so overall the signature looks > much better. I did question whether we need both isAlive and > waitFor(0L,...) but Jason's comment make sense, you don't want to have > exception handling to poll a sub-process. On the javadoc then I don't > think it should mention that it polls every 100ms, that's too > closterfobic and someone will likely want to test it too. > > On the implementation then it looks like Windows is right but the > Solaris/Linux/Mac implementation doesn't wakeup if the sub-process > terminates before the timeout has elapsed. If this proves too > difficult then going forward with the destroyForcibly + isAlive, > leaving waitFor to another day is fine. On the default implementation > (pre-jdk8 Process implementations outside of the JDK) then I assume > this method will misbehave with a large timeout (the addition will > overflow). You could probably adjust the sleep timeout when the > remaining time is <100ms. > > -Alan. > > From Alan.Bateman at oracle.com Fri Apr 20 20:50:59 2012 From: Alan.Bateman at oracle.com (Alan Bateman) Date: Fri, 20 Apr 2012 21:50:59 +0100 Subject: RFR: 7160725 - Strange or obsolete @see tags in some exception java.lang javadoc In-Reply-To: <4F907A4D.2060706@oracle.com> References: <4F907A4D.2060706@oracle.com> Message-ID: <4F91CC33.3070706@oracle.com> On 19/04/2012 21:49, David Holmes wrote: > Hi Jim, > > On 20/04/2012 12:41 AM, Jim Gish wrote: >> Hi David, >> >> As I discussed with Alan, I don't think the conventions for @see in >> general are very clear. One could argue that there are a number of >> approaches that could be taken, among them: an exhaustive list, a >> representative list, or one simple example. > > Or no example at all. > > I just don't think this changes the level of "strangeness" as > originally reported - and it would be interesting to know what the > reporter thinks of the suggested change. > > But this isn't worth extensive debate so if Alan and co are happy with > this I'm not objecting. Someone pointed out on the list [1] that there were a couple of references to types/methods that are outdated and should be updated or removed. I don't think it's worth doing an exhaustive update, just ensure that the obvious references are relevant/useful. I'm not aware of any guidelines or conventions as such. -Alan [1] http://mail.openjdk.java.net/pipermail/core-libs-dev/2012-January/008913.html From Alan.Bateman at oracle.com Fri Apr 20 20:54:26 2012 From: Alan.Bateman at oracle.com (Alan Bateman) Date: Fri, 20 Apr 2012 21:54:26 +0100 Subject: RFR: 7160714 - Strange or obsolete @see tags in some exception java.util javadoc In-Reply-To: <852EC4A2-354E-4C9F-A95D-0A5EA2D4D0CD@oracle.com> References: <4F8F12BD.2030608@oracle.com> <852EC4A2-354E-4C9F-A95D-0A5EA2D4D0CD@oracle.com> Message-ID: <4F91CD02.5060300@oracle.com> On 18/04/2012 20:49, Mike Duigou wrote: > Looks good with the copyright change. > > Mike > > Looks fine to me too. From Alan.Bateman at oracle.com Fri Apr 20 20:59:49 2012 From: Alan.Bateman at oracle.com (Alan Bateman) Date: Fri, 20 Apr 2012 21:59:49 +0100 Subject: RFR: 7160725 - Strange or obsolete @see tags in some exception java.lang javadoc In-Reply-To: <4F8F1708.30205@oracle.com> References: <4F8F1708.30205@oracle.com> Message-ID: <4F91CE45.30301@oracle.com> On 18/04/2012 20:33, Jim Gish wrote: > Description: > > Another trivial javadoc update - fixed existing @see ref and added a > few more representative of the exception usage I think it would be better to just remove the @see java.lang.Thread#setPriority(int) from IllegalArgumentException as it's not particularly relevant and leave it at that (meaning no point having references to places that throw IAE as there are too many, I agree with David on that). -Alan. From kurchi.subhra.hazra at oracle.com Fri Apr 20 19:09:55 2012 From: kurchi.subhra.hazra at oracle.com (Kurchi Subhra Hazra) Date: Fri, 20 Apr 2012 12:09:55 -0700 Subject: Code Review Request: 7160242: (prefs) Preferences.remove(null) does not throw NPE [macosx] In-Reply-To: <4F91B1C1.5050200@oracle.com> References: <4F91B1C1.5050200@oracle.com> Message-ID: <4F91B483.3030205@oracle.com> Hi, This change inserts a null check for the key being passed to Preferences.remove() on Mac, so that the method throws a NullPointerException when key is null (according to its specification). Bug: http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=7160242 Webrev: http://cr.openjdk.java.net/~khazra/7160242/webrev.00/ Thanks, Kurchi From darryl.mocek at oracle.com Fri Apr 20 22:40:13 2012 From: darryl.mocek at oracle.com (Darryl Mocek) Date: Fri, 20 Apr 2012 15:40:13 -0700 Subject: Code Review Request - Bug #6948101 & 7142596: RMI JPRT tests are failing In-Reply-To: <4F8FEDF1.6060909@oracle.com> References: <4F88BA9F.2000600@oracle.com> <4F89A1F5.6090308@oracle.com> <4F8C6645.3030708@oracle.com> <4F8D3127.2060805@oracle.com> <4F8F2681.7080406@oracle.com> <4F8FEDF1.6060909@oracle.com> Message-ID: <4F91E5CD.5010706@oracle.com> I've modified the implementation: - Use LocateRegistry.createRegistry(0) where possible (it's not possible in all places), rather then creating a ServerSocket, getting the port, then closing it and returning the port number. - Added a TestLibrary.getRegistryPort(Registry) method to get the port number of the registry. - Added java/rmi and sun/rmi back to the list of tests which must be run in othervm mode. - Added back othervm to the tests I removed it from. - Fixed the AltSecurityManager test and removed it from the ProblemList. Revised webrev can be found here: http://cr.openjdk.java.net/~dmocek/7142596/webrev.01 Darryl On 04/19/2012 03:50 AM, Alan Bateman wrote: > On 18/04/2012 21:39, Darryl Mocek wrote: >> : >> >> Brilliant! I didn't realize Registry.toString included the port >> number. However, I did in fact find a way to get the port through >> the API's (see below), although I think toString is more efficient. >> I'm pretty sure I can get rid of the instanceof checks. > I don't have a strong opinion as to whether it uses toString or > depends on sun.rmi.server.RegistryImpl. The main thing is that I think > it will be a lot more reliable to bind to an ephemeral port when > compared to find an unused port. > > Just so you know, I grabbed the patch from your webrev and tried it > out, it was nice to see close to x4 improvement when running these > tests with -concurrency:auto on an 4-core system. > > -Alan From Alan.Bateman at oracle.com Sat Apr 21 07:42:48 2012 From: Alan.Bateman at oracle.com (Alan Bateman) Date: Sat, 21 Apr 2012 08:42:48 +0100 Subject: Code Review Request - Bug #6948101 & 7142596: RMI JPRT tests are failing In-Reply-To: <4F91E5CD.5010706@oracle.com> References: <4F88BA9F.2000600@oracle.com> <4F89A1F5.6090308@oracle.com> <4F8C6645.3030708@oracle.com> <4F8D3127.2060805@oracle.com> <4F8F2681.7080406@oracle.com> <4F8FEDF1.6060909@oracle.com> <4F91E5CD.5010706@oracle.com> Message-ID: <4F9264F8.6030608@oracle.com> On 20/04/2012 23:40, Darryl Mocek wrote: > I've modified the implementation: > > - Use LocateRegistry.createRegistry(0) where possible (it's not > possible in all places), rather then creating a ServerSocket, getting > the port, then closing it and returning the port number. > - Added a TestLibrary.getRegistryPort(Registry) method to get the port > number of the registry. > - Added java/rmi and sun/rmi back to the list of tests which must be > run in othervm mode. > - Added back othervm to the tests I removed it from. > - Fixed the AltSecurityManager test and removed it from the ProblemList. > > Revised webrev can be found here: > http://cr.openjdk.java.net/~dmocek/7142596/webrev.01 As a sanity check I ran the java/rmi and sun/rmi tests on an 8-core machine, specifying -concurrency:auto to jtreg. Without your patch then these tests are forced to run sequentially (by the exclusiveAccess.dirs setting) and completed in 28m 11s for me. I applied your patch and they completed (successfully) in 4m 8s. So this is good stuff. I think Stuart is going to review the patch in detail, I don't think I have time to go through all of it but will try to at least scan it. One thing that I want to look for is to check that the VM options are passed through to any rmid or rmiregistry processes that are created in the tests. This is important when running with concurrency>1 to ensure that we don't over-commit memory - for example I might run with jtreg -vmoption:-Xmx512m so that agent VMs or processes launched by the test harness don't consume 1/4 of the memory and we need to ensure these options get propagated through to rmi* processes that these tests might launch. This issue wasn't a problem when trying your patch because the system I ran on had 24GB (but it could be an issue on a lesser machine). -Alan From Alan.Bateman at oracle.com Sat Apr 21 07:52:00 2012 From: Alan.Bateman at oracle.com (Alan Bateman) Date: Sat, 21 Apr 2012 08:52:00 +0100 Subject: Code Review Request: 7160242: (prefs) Preferences.remove(null) does not throw NPE [macosx] In-Reply-To: <4F91B483.3030205@oracle.com> References: <4F91B1C1.5050200@oracle.com> <4F91B483.3030205@oracle.com> Message-ID: <4F926720.9070608@oracle.com> On 20/04/2012 20:09, Kurchi Subhra Hazra wrote: > Hi, > > This change inserts a null check for the key being passed to > Preferences.remove() on Mac, so that > the method throws a NullPointerException when key is null (according > to its specification). > > Bug: http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=7160242 > Webrev: http://cr.openjdk.java.net/~khazra/7160242/webrev.00/ Thanks, > Kurchi Kurchi - would you be able to add a test to test/java/util/prefs so that we have coverage for this case? -Alan. From xueming.shen at oracle.com Sat Apr 21 07:56:13 2012 From: xueming.shen at oracle.com (Xueming Shen) Date: Sat, 21 Apr 2012 00:56:13 -0700 Subject: Codereview request for 7014640: To add a metachar \R for line ending and character classes for vertical/horizontal ws \v \V \h \H Message-ID: <4F92681D.5090608@oracle.com> Hi Here are the webrev and blenderrev for the proposed change to add 5 new regex constructs \R \v \V \h \V. \R: recommended by Unicode Regex TR#18 for matching all line ending characters and sequences, is equivalent to ( \u000D\u000A | [\u000A\u000B\u000C\u000D\u0085\u2028\u2029] ) \h, \v, \H and \V: matches any character considered to (not) be horizontal/vertical whitespace. Webrev: http://cr.openjdk.java.net/~sherman/7014640/blenderrev.html Blenderrev: http://cr.openjdk.java.net/~sherman/7014640/blenderrev.html new Pattern api http://cr.openjdk.java.net/~sherman/7014640/Pattern.html Here are couple notes regarding the spec/implementation. (1) \v was implemented as \u000B ('\013'), but not documented (did not appear in our API doc as one supported construct, such as \t \r \n...). To define \v as a "general" construct for all vertical whitespace characters might trigger some compatibility concerns (more characters are now matched by \v). But given this is a never documented implementation detail and the \u000B is still being matched by \v, I would consider this as an acceptable behavior change. (2) a predefined character class can appear inside another character class, for example you can have [...\v...], however, since it represents a "class" of character, so it can't be a start or end code point of a range inside a class, so you can have [a-b], but you can't have [\h-...] or [...-\h] (exception will be thrown). But for \v, since it was implemented as \u000B (VT), you were able to put it as a start or end value of a range, I feel it'd be better still keep it the way it worked before, so [\v-\v] works and will match the VT in this implementation. (3) The newly added \h\v\H\V constructs are all "Unicode version" of character classes, the rest of the "predefined character class" family (\d\D\s\S\w\W) are ASCII only, you will have to turn on flag UNICODE_CHARACTER_CLASS to get the Unicode version of these constructs. This is kinda of inconsistent. Perl's corresponding constructs work in a similar way, all Perl's \d\D\s\S \w\W\v\V\h\H work in Unicode version, and to have a \a modifier to turn the \d\D\s\S\w\W back to ASCII mode but not for \h\v\H\V. We had the discussion back into JDK7 regarding the ASCII vs Unicode for these constructs, the decision then was to keep these predefined character classes (and POSIX character classes) ASCII by default, to have a flag UNICODE_CHARACTER_CLASS to turn them into Unicode version. Given there is NOT an ASCII version in Perl and we didn't have ASCII version in Java regex to trigger compatibility concern, I feel it might be better to just have a simple Unicode version of \h\v\H\V. (4)\R is not a character class, since it matched \r\n. This one will need to go through ccc process. Thanks, -Sherman From forax at univ-mlv.fr Sat Apr 21 11:23:41 2012 From: forax at univ-mlv.fr (=?ISO-8859-1?Q?R=E9mi_Forax?=) Date: Sat, 21 Apr 2012 13:23:41 +0200 Subject: Code Review Request: 7160242: (prefs) Preferences.remove(null) does not throw NPE [macosx] In-Reply-To: <4F926720.9070608@oracle.com> References: <4F91B1C1.5050200@oracle.com> <4F91B483.3030205@oracle.com> <4F926720.9070608@oracle.com> Message-ID: <4F9298BD.3070605@univ-mlv.fr> On 04/21/2012 09:52 AM, Alan Bateman wrote: > On 20/04/2012 20:09, Kurchi Subhra Hazra wrote: >> Hi, >> >> This change inserts a null check for the key being passed to >> Preferences.remove() on Mac, so that >> the method throws a NullPointerException when key is null (according >> to its specification). >> >> Bug: http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=7160242 >> Webrev: http://cr.openjdk.java.net/~khazra/7160242/webrev.00/ Thanks, >> Kurchi > Kurchi - would you be able to add a test to test/java/util/prefs so > that we have coverage for this case? > > -Alan. Also you can use Objects.requireNonNull() http://docs.oracle.com/javase/7/docs/api/java/util/Objects.html#requireNonNull%28T,%20java.lang.String%29 R?mi From dl at cs.oswego.edu Sat Apr 21 14:21:37 2012 From: dl at cs.oswego.edu (Doug Lea) Date: Sat, 21 Apr 2012 10:21:37 -0400 Subject: Draft j.u.c JEP Message-ID: <4F92C271.8070809@cs.oswego.edu> I was reminded that we ought to submit a JEP to cover the non-lambda-related additions to java.util.concurrent targeted for JDK8. Below is a draft. Comments and suggestions during the next week before I submit it would be welcome. .... Title: java.util.concurrent additions and changes for JDK8 Author: Doug Lea Organization: SUNY Oswego Created: 2012/4/21 Type: Feature State: Draft Exposure: Open Component: core/lib Scope: SE Discussion: core-libs-dev at openjdk.java.net Template: 1.0 Summary ------- In addition to features in support of lambdas, we plan inclusion for OpenJDK8 of a few new classes and methods in java.util.concurrent, as well as ongoing improvements of existing classes, all spurred by experiences and suggestions of users of the java.util.concurrent package. Motivation ---------- The continual evolution of uses of concurrency and parallelism in applications requires continual evolution in library support. Description ----------- A non-exhaustive list: 1. Scalable updatable variables. Maintaining a single count, sum, etc that is updated by possibly many threads is a common scalability problem. A small set of new classes (LongAdder, DoubleAdder, LongMaxUpdater, DoubleMaxUpdater) internally employ contention-reduction techniques that provide huge throughput improvements as compared to Atomic variables. This is made possible by relaxing atomicity guarantees in a way that is acceptable in most applications. 2. Added features (and possibly added APIs) that make ConcurrentHashMaps and classes built from them more useful as Caches. These include methods to compute values for keys when they are not present, as well as improved support for scanning and possibly evicting entries. 3. Added functionality and improved performance for ForkJoinPools that allow them to be used more effectively in the increasingly wider range of applications that users desire. New features include support for completion-based designs that are often most appropriate for IO-bound usages, among others. Possible further additions include reconsideration of a "Fences" API, Sequence Locks, and other related support that better enables construction of STM (Software Transactional Memory) frameworks. However, STM support per se is not a goal for JDK8. Preliminary versions of these components (as well as other minor updates to others) have been, and continue to be, introduced outside of OpenJDK to solicit early feedback and experience reports (mainly by expert users) before integrating into OpenJDK. Sources and mailing list discussions may be found by following links at: Testing ------- We (the continuing set of JSR166 members) provide functionality and performance tests for all components. Risks and Assumptions --------------------- We assume that Oracle engineers will continue to assist integrating into OpenJDK. Dependencies ----------- Some features depend on lambda syntax and JDK declarations of common function types, so we will probably delay integration until we are more confident of their final form. Impact ------ We aren't aware of any other impact on JDK8. From brian.goetz at oracle.com Sat Apr 21 17:10:50 2012 From: brian.goetz at oracle.com (Brian Goetz) Date: Sat, 21 Apr 2012 13:10:50 -0400 Subject: Draft j.u.c JEP In-Reply-To: <4F92C271.8070809@cs.oswego.edu> References: <4F92C271.8070809@cs.oswego.edu> Message-ID: <4F92EA1A.7000901@oracle.com> This all looks great. My only concern is the mention of a "fences" API; I would think that this might rise to the level of wanting its own JSR, since the memory model does not necessarily provide for the all various relaxed consistency modes that such an API would seem to imply, and might involve VM support. On 4/21/2012 10:21 AM, Doug Lea wrote: > > I was reminded that we ought to submit a JEP to cover > the non-lambda-related additions to java.util.concurrent > targeted for JDK8. Below is a draft. Comments and suggestions > during the next week before I submit it would be welcome. > > .... > > Title: java.util.concurrent additions and changes for JDK8 > Author: Doug Lea > Organization: SUNY Oswego > Created: 2012/4/21 > Type: Feature > State: Draft > Exposure: Open > Component: core/lib > Scope: SE > Discussion: core-libs-dev at openjdk.java.net > Template: 1.0 > > > Summary > ------- > > In addition to features in support of lambdas, we plan inclusion for > OpenJDK8 of a few new classes and methods in java.util.concurrent, as > well as ongoing improvements of existing classes, all spurred by > experiences and suggestions of users of the java.util.concurrent > package. > > Motivation > ---------- > > The continual evolution of uses of concurrency and parallelism in > applications requires continual evolution in library support. > > > Description > ----------- > > A non-exhaustive list: > > 1. Scalable updatable variables. Maintaining a single count, sum, etc > that is updated by possibly many threads is a common scalability > problem. A small set of new classes (LongAdder, DoubleAdder, > LongMaxUpdater, DoubleMaxUpdater) internally employ > contention-reduction techniques that provide huge throughput > improvements as compared to Atomic variables. This is made possible by > relaxing atomicity guarantees in a way that is acceptable in most > applications. > > 2. Added features (and possibly added APIs) that make > ConcurrentHashMaps and classes built from them more useful as > Caches. These include methods to compute values for keys when they are > not present, as well as improved support for scanning and possibly > evicting entries. > > 3. Added functionality and improved performance for ForkJoinPools that > allow them to be used more effectively in the increasingly wider range > of applications that users desire. New features include support for > completion-based designs that are often most appropriate for IO-bound > usages, among others. > > Possible further additions include reconsideration of a "Fences" API, > Sequence Locks, and other related support that better enables > construction of STM (Software Transactional Memory) frameworks. > However, STM support per se is not a goal for JDK8. > > Preliminary versions of these components (as well as other minor > updates to others) have been, and continue to be, introduced outside > of OpenJDK to solicit early feedback and experience reports (mainly by > expert users) before integrating into OpenJDK. Sources and mailing > list discussions may be found by following links at: > > Testing > ------- > > We (the continuing set of JSR166 members) provide functionality > and performance tests for all components. > > > Risks and Assumptions > --------------------- > > We assume that Oracle engineers will continue to assist integrating > into OpenJDK. > > > Dependencies > ----------- > > Some features depend on lambda syntax and JDK declarations of common > function types, so we will probably delay integration until we are > more confident of their final form. > > Impact > ------ > > We aren't aware of any other impact on JDK8. > > From dl at cs.oswego.edu Sat Apr 21 19:50:08 2012 From: dl at cs.oswego.edu (Doug Lea) Date: Sat, 21 Apr 2012 15:50:08 -0400 Subject: Draft j.u.c JEP In-Reply-To: <4F92EA1A.7000901@oracle.com> References: <4F92C271.8070809@cs.oswego.edu> <4F92EA1A.7000901@oracle.com> Message-ID: <4F930F70.9090005@cs.oswego.edu> On 04/21/12 13:10, Brian Goetz wrote: > My only concern is the mention of a "fences" API; I would think that this might > rise to the level of wanting its own JSR, since the memory model does not > necessarily provide for the all various relaxed consistency modes that such an > API would seem to imply, and might involve VM support. > Tying this to a JMM revision is a little scary: We know there are bugs (ranging from typos to unintended semantics to incompleteness) in the JMM. None of them are very interesting wrt 99.99999% of all java programs. Still, the sense is that any revision should fix these as well. But some of these are not amenable to simple bandaids, but would require a major re-spec effort. In the mean time, we have introduced some methods (like AtomicX.lazySet) as well as those in the JDK7 Fences proposal that can ride on top of flawed underlying spec, in a way that doesn't introduce any further flaws, and so doesn't make eventual JMM re-spec any harder. When scoping out Fences for JDK7, I discussed the 3 minimal VM intrinsics methods to add with Hotspot and IBM J9 engineers. They were OK about doing it then (because it mainly entails just exposing some VM internals), so presumably still are, modulo scheduling effort to actually do it. The main questions are as always whether the potential benefits of exposing these methods to people who need them outweigh their relatively high potential for errors and uninterpretable effects. People have very strong view on both sides. (This doesn't impact us much inside java.util.concurrent because we can for the most part get the intended effects by directly using existing intrinsics.) Anyway, it's not clear we even want to have another discussion about introducing Fences. But I listed it because I think it is likely to come up again. -Doug From Alan.Bateman at oracle.com Sun Apr 22 06:51:53 2012 From: Alan.Bateman at oracle.com (Alan Bateman) Date: Sun, 22 Apr 2012 07:51:53 +0100 Subject: 7163395: jdk8/tl no longer builds on Mac Message-ID: <4F93AA89.6000900@oracle.com> I need a reviewer for a trivial change to get jdk8/tl building on Mac again. Jim's changes for 7130404 [1] change the os.arch variable to "x86_64" to be compatible with Apple's JDK but the change-set doesn't add a jvm.cfg to the x86_64 directory. The issue is trivially fixed by moving the jvm,cfg to the right location: $ hg diff -g diff --git a/src/macosx/bin/amd64/jvm.cfg b/src/macosx/bin/x86_64/jvm.cfg rename from src/macosx/bin/amd64/jvm.cfg rename to src/macosx/bin/x86_64/jvm.cfg Note that jdk7u doesn't have this issue as the corresponding change-set added a new jvm,cfg. Thanks, Alan. [1] http://hg.openjdk.java.net/jdk8/tl/jdk/rev/77b35c5c4b95 From chris.hegarty at oracle.com Sun Apr 22 07:57:49 2012 From: chris.hegarty at oracle.com (Chris Hegarty) Date: Sun, 22 Apr 2012 08:57:49 +0100 Subject: 7163395: jdk8/tl no longer builds on Mac Message-ID: Looks fine Alan. -Chris Alan Bateman wrote: > >I need a reviewer for a trivial change to get jdk8/tl building on Mac >again. Jim's changes for 7130404 [1] change the os.arch variable to >"x86_64" to be compatible with Apple's JDK but the change-set doesn't >add a jvm.cfg to the x86_64 directory. The issue is trivially fixed by >moving the jvm,cfg to the right location: > >$ hg diff -g >diff --git a/src/macosx/bin/amd64/jvm.cfg b/src/macosx/bin/x86_64/jvm.cfg >rename from src/macosx/bin/amd64/jvm.cfg >rename to src/macosx/bin/x86_64/jvm.cfg > >Note that jdk7u doesn't have this issue as the corresponding change-set >added a new jvm,cfg. > >Thanks, >Alan. > >[1] http://hg.openjdk.java.net/jdk8/tl/jdk/rev/77b35c5c4b95 From kelly.ohair at oracle.com Sun Apr 22 08:26:30 2012 From: kelly.ohair at oracle.com (Kelly O'Hair) Date: Sun, 22 Apr 2012 10:26:30 +0200 Subject: 7163395: jdk8/tl no longer builds on Mac In-Reply-To: <4F93AA89.6000900@oracle.com> References: <4F93AA89.6000900@oracle.com> Message-ID: <2D671B1B-A820-457F-9BA5-5CFDE554629E@oracle.com> Looks fine. -kto On Apr 22, 2012, at 8:51 AM, Alan Bateman wrote: > > I need a reviewer for a trivial change to get jdk8/tl building on Mac again. Jim's changes for 7130404 [1] change the os.arch variable to "x86_64" to be compatible with Apple's JDK but the change-set doesn't add a jvm.cfg to the x86_64 directory. The issue is trivially fixed by moving the jvm,cfg to the right location: > > $ hg diff -g > diff --git a/src/macosx/bin/amd64/jvm.cfg b/src/macosx/bin/x86_64/jvm.cfg > rename from src/macosx/bin/amd64/jvm.cfg > rename to src/macosx/bin/x86_64/jvm.cfg > > Note that jdk7u doesn't have this issue as the corresponding change-set added a new jvm,cfg. > > Thanks, > Alan. > > [1] http://hg.openjdk.java.net/jdk8/tl/jdk/rev/77b35c5c4b95 From forax at univ-mlv.fr Sun Apr 22 10:03:46 2012 From: forax at univ-mlv.fr (=?ISO-8859-1?Q?R=E9mi_Forax?=) Date: Sun, 22 Apr 2012 12:03:46 +0200 Subject: Draft j.u.c JEP In-Reply-To: <4F930F70.9090005@cs.oswego.edu> References: <4F92C271.8070809@cs.oswego.edu> <4F92EA1A.7000901@oracle.com> <4F930F70.9090005@cs.oswego.edu> Message-ID: <4F93D782.5000600@univ-mlv.fr> On 04/21/2012 09:50 PM, Doug Lea wrote: > On 04/21/12 13:10, Brian Goetz wrote: >> My only concern is the mention of a "fences" API; I would think that >> this might >> rise to the level of wanting its own JSR, since the memory model does >> not >> necessarily provide for the all various relaxed consistency modes >> that such an >> API would seem to imply, and might involve VM support. >> > > Tying this to a JMM revision is a little scary: We know there > are bugs (ranging from typos to unintended semantics to incompleteness) > in the JMM. None of them are very interesting wrt 99.99999% of > all java programs. Still, the sense is that any revision > should fix these as well. But some of these are not amenable > to simple bandaids, but would require a major re-spec effort. > In the mean time, we have introduced some methods (like > AtomicX.lazySet) as well as those in the JDK7 Fences proposal > that can ride on top of flawed underlying spec, in a way that > doesn't introduce any further flaws, and so doesn't make eventual > JMM re-spec any harder. > > When scoping out Fences for JDK7, I discussed the 3 minimal VM > intrinsics methods to add with Hotspot and IBM J9 engineers. They > were OK about doing it then (because it mainly entails just exposing > some VM internals), so presumably still are, modulo > scheduling effort to actually do it. > > The main questions are as always whether the potential benefits > of exposing these methods to people who need them outweigh their > relatively high potential for errors and uninterpretable effects. > People have very strong view on both sides. > (This doesn't impact us much inside java.util.concurrent > because we can for the most part get the intended effects > by directly using existing intrinsics.) > > Anyway, it's not clear we even want to have another discussion > about introducing Fences. But I listed it because I think > it is likely to come up again. > > -Doug > Given that fences is really low level, I'm not sure it's a good idea to have a public API for them. I would prefer to have a class sun.misc.Fences (or in sun.misc.Unsafe) i.e. a class that is part of the VM API but not part of the JDK API. R?mi From kumar.x.srinivasan at oracle.COM Sun Apr 22 13:35:25 2012 From: kumar.x.srinivasan at oracle.COM (Kumar Srinivasan) Date: Sun, 22 Apr 2012 06:35:25 -0700 Subject: 7163395: jdk8/tl no longer builds on Mac In-Reply-To: <2D671B1B-A820-457F-9BA5-5CFDE554629E@oracle.com> References: <4F93AA89.6000900@oracle.com> <2D671B1B-A820-457F-9BA5-5CFDE554629E@oracle.com> Message-ID: <4F94091D.5080505@oracle.COM> Looks good, I also tested this and it works. Kumar > Looks fine. > > -kto > > On Apr 22, 2012, at 8:51 AM, Alan Bateman wrote: > >> I need a reviewer for a trivial change to get jdk8/tl building on Mac again. Jim's changes for 7130404 [1] change the os.arch variable to "x86_64" to be compatible with Apple's JDK but the change-set doesn't add a jvm.cfg to the x86_64 directory. The issue is trivially fixed by moving the jvm,cfg to the right location: >> >> $ hg diff -g >> diff --git a/src/macosx/bin/amd64/jvm.cfg b/src/macosx/bin/x86_64/jvm.cfg >> rename from src/macosx/bin/amd64/jvm.cfg >> rename to src/macosx/bin/x86_64/jvm.cfg >> >> Note that jdk7u doesn't have this issue as the corresponding change-set added a new jvm,cfg. >> >> Thanks, >> Alan. >> >> [1] http://hg.openjdk.java.net/jdk8/tl/jdk/rev/77b35c5c4b95 From kumar.x.srinivasan at oracle.com Sun Apr 22 17:50:54 2012 From: kumar.x.srinivasan at oracle.com (kumar.x.srinivasan at oracle.com) Date: Sun, 22 Apr 2012 17:50:54 +0000 Subject: hg: jdk8/tl/jdk: 6981776: Pack200 must support -target 7 bytecodes Message-ID: <20120422175117.AB85F47206@hg.openjdk.java.net> Changeset: ec9876082b4e Author: ksrini Date: 2012-04-22 06:54 -0700 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/ec9876082b4e 6981776: Pack200 must support -target 7 bytecodes Summary: pack200 implementation of JSR-200 updated for JSR-292 changes Reviewed-by: jrose, ksrini Contributed-by: john.r.rose at oracle.com, kumar.x.srinivasan at oracle.com ! src/share/classes/com/sun/java/util/jar/pack/Attribute.java ! src/share/classes/com/sun/java/util/jar/pack/BandStructure.java ! src/share/classes/com/sun/java/util/jar/pack/ClassReader.java ! src/share/classes/com/sun/java/util/jar/pack/ClassWriter.java ! src/share/classes/com/sun/java/util/jar/pack/ConstantPool.java ! src/share/classes/com/sun/java/util/jar/pack/Constants.java ! src/share/classes/com/sun/java/util/jar/pack/Instruction.java ! src/share/classes/com/sun/java/util/jar/pack/Package.java ! src/share/classes/com/sun/java/util/jar/pack/PackageReader.java ! src/share/classes/com/sun/java/util/jar/pack/PackageWriter.java ! src/share/classes/com/sun/java/util/jar/pack/TLGlobals.java ! src/share/classes/com/sun/java/util/jar/pack/Utils.java ! src/share/native/com/sun/java/util/jar/pack/bands.cpp ! src/share/native/com/sun/java/util/jar/pack/bands.h ! src/share/native/com/sun/java/util/jar/pack/constants.h ! src/share/native/com/sun/java/util/jar/pack/defines.h ! src/share/native/com/sun/java/util/jar/pack/unpack.cpp ! src/share/native/com/sun/java/util/jar/pack/unpack.h ! test/tools/pack200/AttributeTests.java ! test/tools/pack200/PackageVersionTest.java ! test/tools/pack200/Utils.java - test/tools/pack200/dyn.jar ! test/tools/pack200/pack200-verifier/data/README ! test/tools/pack200/pack200-verifier/data/golden.jar ! test/tools/pack200/pack200-verifier/make/build.xml ! test/tools/pack200/pack200-verifier/src/xmlkit/ClassReader.java - test/tools/pack200/pack200-verifier/src/xmlkit/ClassSyntax.java - test/tools/pack200/pack200-verifier/src/xmlkit/ClassWriter.java - test/tools/pack200/pack200-verifier/src/xmlkit/InstructionAssembler.java - test/tools/pack200/pack200-verifier/src/xmlkit/InstructionSyntax.java From vitalyd at gmail.com Sun Apr 22 18:07:16 2012 From: vitalyd at gmail.com (Vitaly Davidovich) Date: Sun, 22 Apr 2012 14:07:16 -0400 Subject: Draft j.u.c JEP In-Reply-To: <4F93D782.5000600@univ-mlv.fr> References: <4F92C271.8070809@cs.oswego.edu> <4F92EA1A.7000901@oracle.com> <4F930F70.9090005@cs.oswego.edu> <4F93D782.5000600@univ-mlv.fr> Message-ID: I would prefer that Fences was a JDK API rather than being "hidden" inside a VM one. It is low level but there's nothing unsafe about it in the sense of other APIs inside the Unsafe class, and it would be undesirable if one had to jump through hoops to get access to it like we do for Unsafe today (i.e. using reflection). Sent from my phone On Apr 22, 2012 6:02 AM, "R?mi Forax" wrote: > On 04/21/2012 09:50 PM, Doug Lea wrote: > >> On 04/21/12 13:10, Brian Goetz wrote: >> >>> My only concern is the mention of a "fences" API; I would think that >>> this might >>> rise to the level of wanting its own JSR, since the memory model does not >>> necessarily provide for the all various relaxed consistency modes that >>> such an >>> API would seem to imply, and might involve VM support. >>> >>> >> Tying this to a JMM revision is a little scary: We know there >> are bugs (ranging from typos to unintended semantics to incompleteness) >> in the JMM. None of them are very interesting wrt 99.99999% of >> all java programs. Still, the sense is that any revision >> should fix these as well. But some of these are not amenable >> to simple bandaids, but would require a major re-spec effort. >> In the mean time, we have introduced some methods (like >> AtomicX.lazySet) as well as those in the JDK7 Fences proposal >> that can ride on top of flawed underlying spec, in a way that >> doesn't introduce any further flaws, and so doesn't make eventual >> JMM re-spec any harder. >> >> When scoping out Fences for JDK7, I discussed the 3 minimal VM >> intrinsics methods to add with Hotspot and IBM J9 engineers. They >> were OK about doing it then (because it mainly entails just exposing >> some VM internals), so presumably still are, modulo >> scheduling effort to actually do it. >> >> The main questions are as always whether the potential benefits >> of exposing these methods to people who need them outweigh their >> relatively high potential for errors and uninterpretable effects. >> People have very strong view on both sides. >> (This doesn't impact us much inside java.util.concurrent >> because we can for the most part get the intended effects >> by directly using existing intrinsics.) >> >> Anyway, it's not clear we even want to have another discussion >> about introducing Fences. But I listed it because I think >> it is likely to come up again. >> >> -Doug >> >> > Given that fences is really low level, I'm not sure it's a good idea > to have a public API for them. > I would prefer to have a class sun.misc.Fences (or in sun.misc.Unsafe) > i.e. a class that is part of the VM API but not part of the JDK API. > > R?mi > > > > From alan.bateman at oracle.com Sun Apr 22 18:12:59 2012 From: alan.bateman at oracle.com (alan.bateman at oracle.com) Date: Sun, 22 Apr 2012 18:12:59 +0000 Subject: hg: jdk8/tl/jdk: 2 new changesets Message-ID: <20120422181319.1169A47207@hg.openjdk.java.net> Changeset: c2da01f0bdc1 Author: alanb Date: 2012-04-22 19:09 +0100 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/c2da01f0bdc1 7163395: jdk8/tl no longer builds on Mac Reviewed-by: chegar, ohair, ksrini - src/macosx/bin/amd64/jvm.cfg + src/macosx/bin/x86_64/jvm.cfg Changeset: 07dab8d9e34a Author: alanb Date: 2012-04-22 19:12 +0100 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/07dab8d9e34a Merge - test/tools/pack200/dyn.jar - test/tools/pack200/pack200-verifier/src/xmlkit/ClassSyntax.java - test/tools/pack200/pack200-verifier/src/xmlkit/ClassWriter.java - test/tools/pack200/pack200-verifier/src/xmlkit/InstructionAssembler.java - test/tools/pack200/pack200-verifier/src/xmlkit/InstructionSyntax.java From alan.bateman at oracle.com Sun Apr 22 20:22:41 2012 From: alan.bateman at oracle.com (alan.bateman at oracle.com) Date: Sun, 22 Apr 2012 20:22:41 +0000 Subject: hg: jdk8/tl/jdk: 7132924: (dc) DatagramChannel.disconnect throws SocketException with IPv4 socket and IPv6 enabled [macosx] Message-ID: <20120422202252.9AA6C4720A@hg.openjdk.java.net> Changeset: 1980be18d0f8 Author: alanb Date: 2012-04-22 21:22 +0100 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/1980be18d0f8 7132924: (dc) DatagramChannel.disconnect throws SocketException with IPv4 socket and IPv6 enabled [macosx] Reviewed-by: chegar ! src/share/classes/sun/nio/ch/DatagramChannelImpl.java ! src/solaris/native/sun/nio/ch/DatagramChannelImpl.c ! src/windows/native/sun/nio/ch/DatagramChannelImpl.c + test/java/nio/channels/DatagramChannel/Disconnect.java From david.holmes at oracle.com Mon Apr 23 01:46:18 2012 From: david.holmes at oracle.com (David Holmes) Date: Mon, 23 Apr 2012 11:46:18 +1000 Subject: review request: 4244896: (process) Provide System.getPid(), System.killProcess(String pid) In-Reply-To: <4F912C07.6030709@oracle.com> References: <4F861847.5080308@oracle.com> <4F869AD6.7010903@oracle.com>, <4F8D849E.8090607@oracle.com> <4F8F56E0.6020009@oracle.com> <4F8FF15E.9080408@oracle.com> <4F90BCDF.60200@oracle.com> <4F91292C.7020108@oracle.com> <4F912C07.6030709@oracle.com> Message-ID: <4F94B46A.6030803@oracle.com> The process reaper thread will be calling process.notifyAll() so this is not simply a sleep. In which case the correct form would be: public synchronized boolean waitFor(long timeout, TimeUnit unit) { ... while (!hasExited) { wait(timeLeft); if (!hasExited) { timeleft = recalcTimeLeft(...); } ... } but using wait/notify the recalculation of the timeleft to wait becomes burdensome. At this point - issues of j.u.c dependencies not withstanding - it becomes simpler to use eg CountDownLatch for the synchronization. David ----- On 20/04/2012 7:27 PM, David Holmes wrote: > Correction: > > On 20/04/2012 7:15 PM, David Holmes wrote: >> Rob, >> >> You can't use wait this way: >> >> 217 public synchronized boolean waitFor(long timeout, TimeUnit unit) >> 218 throws InterruptedException { >> 219 long millis = unit.toMillis(timeout); >> 220 long nanos = unit.toNanos(timeout) % (millis * 1000000); >> 221 >> 222 if (hasExited) return true; >> 223 if (timeout <= 0) return false; >> 224 wait(millis, (int)nanos); >> 225 return hasExited; >> 226 } >> >> If this is just causing a delay then use Thread.sleep() (but don't have >> the method synchronized of course). If something is actually calling >> notifyAll (I don't see it) then the above suffers from lost wakeups. > > Sorry - There's no lost wakeup. > > David > ----- > >> Either way a spurious wakeup means you will return earlier than expected. >> >> David >> ----- >> >> On 20/04/2012 11:33 AM, Rob McKenna wrote: >>> I've uploaded another webrev to: >>> >>> http://cr.openjdk.java.net/~robm/4244896/webrev.02/ >>> >>> >>> I plan to spend some time over the coming day or two beefing up the test >>> for waitFor (right now its really geared towards destroyForcibly) so I >>> won't guarantee its 100% quite yet. That said, I would like feedback on >>> a couple of points before I proceed: >>> >>> 1) Alan suggested the use of System.nanoTime() so I altered >>> waitFor(long) to allow for a TimeUnit parameter. UnixProcess objects can >>> use Object.wait(long, int) but unfortunately WaitForMultipleObjects (on >>> Windows) only works to millisecond precision. >>> >>> 2) As Alan noted, there is really no need for isAlive() if people are >>> happy with the idea of waitFor(long, TimeUnit). I'd appreciate any >>> feedback on this aspect of the fix. >>> >>> -Rob >>> >>> On 19/04/12 12:05, Alan Bateman wrote: >>>> On 19/04/2012 01:05, David Holmes wrote: >>>>> On 18/04/2012 11:44 PM, Jason Mehrens wrote: >>>>>> >>>>>> Rob, >>>>>> >>>>>> It looks like waitFor is calling Object.wait(long) without owning >>>>>> this objects monitor. If I pass Long.MAX_VALUE to waitFor, shouldn't >>>>>> waitFor return if the early if the process ends? >>>>> >>>>> Also waitFor doesn't call wait() under the guard of a looping >>>>> predicate so it will suffer from lost signals and potentially >>>>> spurious wakeups. I also don't see anything calling notify[All] to >>>>> indicate the process has now terminated. It would appear that >>>>> wait(timeout) is being used as a sleep mechanism and that is wrong on >>>>> a number of levels. >>>> I assume waitFor(timout) will require 3 distinct implementations, one >>>> for Solaris/Linux/Mac, another for Windows, and a default >>>> implementations for Process implementations that exist outside of the >>>> JDK. >>>> >>>> It's likely the Solaris/Linux/Mac implementation will involve two >>>> threads, one to block in waitpid and the other to interrupt it via a >>>> signal if the timeout elapses before the child terminates. The Windows >>>> implementation should be trivial because it can be a timed wait. >>>> >>>> I assume the default implementation (which is what is being discussed >>>> here) will need to loop calling exitValue until the timeout elapses or >>>> the child terminates. Not very efficient but at least it won't be used >>>> when when creating Processes via Runtime.exec or ProcessBuilder. >>>> >>>> I think the question we need to consider is whether waitFor(timeout) >>>> is really needed. If it's something that it pushed out for another day >>>> then it brings up the question as to whether to include isAlive now or >>>> not (as waitFor without timeout gives us an isAlive equivalent too). >>>> >>>> -Alan. >>>> >>>> >>>> >>>> From youdwei at linux.vnet.ibm.com Mon Apr 23 05:54:19 2012 From: youdwei at linux.vnet.ibm.com (Deven You) Date: Mon, 23 Apr 2012 13:54:19 +0800 Subject: sun.management.Agent: the properties.putAll API may fail with ConcurrentModifcationException on multi-thread scenario In-Reply-To: <4F8E5D34.8050901@linux.vnet.ibm.com> References: <4F853485.7020607@linux.vnet.ibm.com> <4F863945.7020701@oracle.com> <4F8D1CBC.5040205@linux.vnet.ibm.com> <4F8E5282.3070507@oracle.com> <4F8E5D34.8050901@linux.vnet.ibm.com> Message-ID: <4F94EE8B.8070101@linux.vnet.ibm.com> On 04/18/2012 02:20 PM, Deven You wrote: > On 04/18/2012 01:34 PM, Mandy Chung wrote: >> >> >> On 4/17/2012 12:33 AM, Deven You wrote: >>>> I think this could still run into CME. System Properties is not a >>>> synchronized map and the setter methods (System.setProperty or >>>> Properties.put method) doesn't synchronize on the Properties object. >>>> >>> Hi Mandy, >>> >>> I didn't catch you. Do you mean there are other setter methods of >>> System properties in the Agent.java which are not synchronized? >> >> The setter methods I'm referring to are System.setProperty and >> System.getProperties().put(). >> >> Mandy >> > Hi Mandy, > > I have gone through the Agent.java, I think other set/put methods > related to properties are protected properly. > > public static void agentmain using parseString(args) which return > a properties which is a local var and is not possible to cause > concurrent problem when call config_props.putAll(arg_props). > > private static synchronized void startLocalManagementAgent() is > synchronized already. > > private static synchronized void startRemoteManagementAgent(String > args) is synchronized also. > > Could you point where the CME may ocurr? > > Thanks a lot! > > Hi All, Is there any suggestion from the mailing list? -- Best Regards, Deven From david.holmes at oracle.com Mon Apr 23 06:30:37 2012 From: david.holmes at oracle.com (David Holmes) Date: Mon, 23 Apr 2012 16:30:37 +1000 Subject: sun.management.Agent: the properties.putAll API may fail with ConcurrentModifcationException on multi-thread scenario In-Reply-To: <4F94EE8B.8070101@linux.vnet.ibm.com> References: <4F853485.7020607@linux.vnet.ibm.com> <4F863945.7020701@oracle.com> <4F8D1CBC.5040205@linux.vnet.ibm.com> <4F8E5282.3070507@oracle.com> <4F8E5D34.8050901@linux.vnet.ibm.com> <4F94EE8B.8070101@linux.vnet.ibm.com> Message-ID: <4F94F70D.1060906@oracle.com> Deven, On 23/04/2012 3:54 PM, Deven You wrote: > On 04/18/2012 02:20 PM, Deven You wrote: >> On 04/18/2012 01:34 PM, Mandy Chung wrote: >>> >>> >>> I think this could still run into CME. System Properties is not a >>> synchronized map and the setter methods (System.setProperty or >>> Properties.put method) doesn't synchronize on the Properties object. >>> >>> >>> The setter methods I'm referring to are System.setProperty and >>> System.getProperties().put(). >>> >> >> I have gone through the Agent.java, I think other set/put methods >> related to properties are protected properly. >> >> public static void agentmain using parseString(args) which return a >> properties which is a local var and is not possible to cause >> concurrent problem when call config_props.putAll(arg_props). >> >> private static synchronized void startLocalManagementAgent() is >> synchronized already. >> >> private static synchronized void startRemoteManagementAgent(String >> args) is synchronized also. >> >> Could you point where the CME may ocurr? > > Is there any suggestion from the mailing list? The problem is that System.getProperties() returns a globally accessible set of properties. So even if you prevent the Agent code from modifying those properties concurrently with other use in the Agent, you have no such guard for any other piece of code in the system which might also modify the properties. So the race condition you were trying to fix still exists. I don't see any way to fix this. No matter what you do another thread can modify the system properties while you are iterating them. Instead you need to anticipate the CME and try to recover from it (also non-trivial). Cheers, David Holmes From david.holmes at oracle.com Mon Apr 23 06:36:48 2012 From: david.holmes at oracle.com (David Holmes) Date: Mon, 23 Apr 2012 16:36:48 +1000 Subject: sun.management.Agent: the properties.putAll API may fail with ConcurrentModifcationException on multi-thread scenario In-Reply-To: <4F94F70D.1060906@oracle.com> References: <4F853485.7020607@linux.vnet.ibm.com> <4F863945.7020701@oracle.com> <4F8D1CBC.5040205@linux.vnet.ibm.com> <4F8E5282.3070507@oracle.com> <4F8E5D34.8050901@linux.vnet.ibm.com> <4F94EE8B.8070101@linux.vnet.ibm.com> <4F94F70D.1060906@oracle.com> Message-ID: <4F94F880.2020206@oracle.com> Except of course that Properties is a Hashtable and synchronizes on 'this' for all public methods. So locking the properties object in the client code will guarantee exclusive access to it. Sorry about that. David ----- On 23/04/2012 4:30 PM, David Holmes wrote: > Deven, > > On 23/04/2012 3:54 PM, Deven You wrote: >> On 04/18/2012 02:20 PM, Deven You wrote: >>> On 04/18/2012 01:34 PM, Mandy Chung wrote: >>>> >>>> >>>> I think this could still run into CME. System Properties is not a >>>> synchronized map and the setter methods (System.setProperty or >>>> Properties.put method) doesn't synchronize on the Properties object. >>>> >>>> >>>> The setter methods I'm referring to are System.setProperty and >>>> System.getProperties().put(). >>>> >>> >>> I have gone through the Agent.java, I think other set/put methods >>> related to properties are protected properly. >>> >>> public static void agentmain using parseString(args) which return a >>> properties which is a local var and is not possible to cause >>> concurrent problem when call config_props.putAll(arg_props). >>> >>> private static synchronized void startLocalManagementAgent() is >>> synchronized already. >>> >>> private static synchronized void startRemoteManagementAgent(String >>> args) is synchronized also. >>> >>> Could you point where the CME may ocurr? >> >> Is there any suggestion from the mailing list? > > The problem is that System.getProperties() returns a globally accessible > set of properties. So even if you prevent the Agent code from modifying > those properties concurrently with other use in the Agent, you have no > such guard for any other piece of code in the system which might also > modify the properties. So the race condition you were trying to fix > still exists. I don't see any way to fix this. No matter what you do > another thread can modify the system properties while you are iterating > them. Instead you need to anticipate the CME and try to recover from it > (also non-trivial). > > Cheers, > David Holmes From youdwei at linux.vnet.ibm.com Mon Apr 23 07:43:08 2012 From: youdwei at linux.vnet.ibm.com (Deven You) Date: Mon, 23 Apr 2012 15:43:08 +0800 Subject: sun.management.Agent: the properties.putAll API may fail with ConcurrentModifcationException on multi-thread scenario In-Reply-To: <4F94F880.2020206@oracle.com> References: <4F853485.7020607@linux.vnet.ibm.com> <4F863945.7020701@oracle.com> <4F8D1CBC.5040205@linux.vnet.ibm.com> <4F8E5282.3070507@oracle.com> <4F8E5D34.8050901@linux.vnet.ibm.com> <4F94EE8B.8070101@linux.vnet.ibm.com> <4F94F70D.1060906@oracle.com> <4F94F880.2020206@oracle.com> Message-ID: <4F95080C.7090007@linux.vnet.ibm.com> Thanks David, So is it ok for you to contribute this patch? On 04/23/2012 02:36 PM, David Holmes wrote: > Except of course that Properties is a Hashtable and synchronizes on > 'this' for all public methods. So locking the properties object in the > client code will guarantee exclusive access to it. > > Sorry about that. > > David > ----- > > On 23/04/2012 4:30 PM, David Holmes wrote: >> Deven, >> >> On 23/04/2012 3:54 PM, Deven You wrote: >>> On 04/18/2012 02:20 PM, Deven You wrote: >>>> On 04/18/2012 01:34 PM, Mandy Chung wrote: >>>>> >>>>> >>>>> I think this could still run into CME. System Properties is not a >>>>> synchronized map and the setter methods (System.setProperty or >>>>> Properties.put method) doesn't synchronize on the Properties object. >>>>> >>>>> >>>>> The setter methods I'm referring to are System.setProperty and >>>>> System.getProperties().put(). >>>>> >>>> >>>> I have gone through the Agent.java, I think other set/put methods >>>> related to properties are protected properly. >>>> >>>> public static void agentmain using parseString(args) which return a >>>> properties which is a local var and is not possible to cause >>>> concurrent problem when call config_props.putAll(arg_props). >>>> >>>> private static synchronized void startLocalManagementAgent() is >>>> synchronized already. >>>> >>>> private static synchronized void startRemoteManagementAgent(String >>>> args) is synchronized also. >>>> >>>> Could you point where the CME may ocurr? >>> >>> Is there any suggestion from the mailing list? >> >> The problem is that System.getProperties() returns a globally accessible >> set of properties. So even if you prevent the Agent code from modifying >> those properties concurrently with other use in the Agent, you have no >> such guard for any other piece of code in the system which might also >> modify the properties. So the race condition you were trying to fix >> still exists. I don't see any way to fix this. No matter what you do >> another thread can modify the system properties while you are iterating >> them. Instead you need to anticipate the CME and try to recover from it >> (also non-trivial). >> >> Cheers, >> David Holmes > -- Best Regards, Deven From david.holmes at oracle.com Mon Apr 23 07:52:03 2012 From: david.holmes at oracle.com (David Holmes) Date: Mon, 23 Apr 2012 17:52:03 +1000 Subject: sun.management.Agent: the properties.putAll API may fail with ConcurrentModifcationException on multi-thread scenario In-Reply-To: <4F95080C.7090007@linux.vnet.ibm.com> References: <4F853485.7020607@linux.vnet.ibm.com> <4F863945.7020701@oracle.com> <4F8D1CBC.5040205@linux.vnet.ibm.com> <4F8E5282.3070507@oracle.com> <4F8E5D34.8050901@linux.vnet.ibm.com> <4F94EE8B.8070101@linux.vnet.ibm.com> <4F94F70D.1060906@oracle.com> <4F94F880.2020206@oracle.com> <4F95080C.7090007@linux.vnet.ibm.com> Message-ID: <4F950A23.1070205@oracle.com> On 23/04/2012 5:43 PM, Deven You wrote: > Thanks David, > > So is it ok for you to contribute this patch? You can count me as a Reviewer, but it still needs sign-off from Mandy as a serviceability representative. I don't have the spare cycles to act as sponsor for this if you need someone to push it. David ------ > On 04/23/2012 02:36 PM, David Holmes wrote: >> Except of course that Properties is a Hashtable and synchronizes on >> 'this' for all public methods. So locking the properties object in the >> client code will guarantee exclusive access to it. >> >> Sorry about that. >> >> David >> ----- >> >> On 23/04/2012 4:30 PM, David Holmes wrote: >>> Deven, >>> >>> On 23/04/2012 3:54 PM, Deven You wrote: >>>> On 04/18/2012 02:20 PM, Deven You wrote: >>>>> On 04/18/2012 01:34 PM, Mandy Chung wrote: >>>>>> >>>>>> >>>>>> I think this could still run into CME. System Properties is not a >>>>>> synchronized map and the setter methods (System.setProperty or >>>>>> Properties.put method) doesn't synchronize on the Properties object. >>>>>> >>>>>> >>>>>> The setter methods I'm referring to are System.setProperty and >>>>>> System.getProperties().put(). >>>>>> >>>>> >>>>> I have gone through the Agent.java, I think other set/put methods >>>>> related to properties are protected properly. >>>>> >>>>> public static void agentmain using parseString(args) which return a >>>>> properties which is a local var and is not possible to cause >>>>> concurrent problem when call config_props.putAll(arg_props). >>>>> >>>>> private static synchronized void startLocalManagementAgent() is >>>>> synchronized already. >>>>> >>>>> private static synchronized void startRemoteManagementAgent(String >>>>> args) is synchronized also. >>>>> >>>>> Could you point where the CME may ocurr? >>>> >>>> Is there any suggestion from the mailing list? >>> >>> The problem is that System.getProperties() returns a globally accessible >>> set of properties. So even if you prevent the Agent code from modifying >>> those properties concurrently with other use in the Agent, you have no >>> such guard for any other piece of code in the system which might also >>> modify the properties. So the race condition you were trying to fix >>> still exists. I don't see any way to fix this. No matter what you do >>> another thread can modify the system properties while you are iterating >>> them. Instead you need to anticipate the CME and try to recover from it >>> (also non-trivial). >>> >>> Cheers, >>> David Holmes >> > > From staffan.larsen at oracle.com Mon Apr 23 15:08:59 2012 From: staffan.larsen at oracle.com (staffan.larsen at oracle.com) Date: Mon, 23 Apr 2012 15:08:59 +0000 Subject: hg: jdk8/tl/jdk: 7163524: Add SecTaskAccess attribute to jstack [macosx] Message-ID: <20120423150922.68ABF47213@hg.openjdk.java.net> Changeset: fd22345bf1bf Author: sla Date: 2012-04-23 16:34 +0200 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/fd22345bf1bf 7163524: Add SecTaskAccess attribute to jstack [macosx] Reviewed-by: dholmes ! make/launchers/Makefile.launcher From forax at univ-mlv.fr Mon Apr 23 17:35:41 2012 From: forax at univ-mlv.fr (=?ISO-8859-1?Q?R=E9mi_Forax?=) Date: Mon, 23 Apr 2012 19:35:41 +0200 Subject: Remove the assert in Integer.valueOf() Message-ID: <4F9592ED.3040309@univ-mlv.fr> Hi guys, I've found a case where assert is harmful because it doesn't play well with Hotspot inlining heuristic. I'm currently playing with a lambda modified implementation of java.util and as you see below Integer.valueOf is considered as too big by Hotspot to be inlined. 79 2 b lambda.perf.Iterables::filterMapReduce (72 bytes) @ 4 java.util.AbstractList::iterator (10 bytes) inline (hot) @ 6 java.util.AbstractList$Itr:: (6 bytes) unloaded signature classes @ 61 java.util.AbstractList$Itr::hasNext (20 bytes) inline (hot) @ 8 java.util.Arrays$ArrayList::size (6 bytes) inline (hot) ! @ 16 java.util.AbstractList$Itr::next (45 bytes) inline (hot) @ 1 java.util.AbstractList$Itr::checkForComodification (23 bytes) inline (hot) @ 14 java.util.Arrays$ArrayList::get (7 bytes) inline (hot) @ 29 lambda.perf.Test$1::accept (9 bytes) inline (hot) @ 5 lambda.perf.Test$1::accept (13 bytes) inline (hot) @ 1 java.lang.Integer::intValue (5 bytes) inline (hot) @ 45 lambda.perf.Test$2::map (9 bytes) inline (hot) @ 5 lambda.perf.Test$2::map (2 bytes) inline (hot) @ 52 lambda.perf.Test$3::apply (13 bytes) inline (hot) @ 9 lambda.perf.Test$3::apply (13 bytes) inline (hot) @ 1 java.lang.Integer::intValue (5 bytes) inline (hot) @ 5 java.lang.Integer::intValue (5 bytes) inline (hot) @ 9 java.lang.Integer::valueOf (54 bytes) too big @ 61 java.util.AbstractList$Itr::hasNext (20 bytes) inline (hot) @ 8 java.util.Arrays$ArrayList::size (6 bytes) inline (hot) but the code of Integer.valueOf doesn't seem too big: public static Integer valueOf(int i) { assert IntegerCache.high >= 127; if (i >= IntegerCache.low && i <= IntegerCache.high) return IntegerCache.cache[i + (-IntegerCache.low)]; return new Integer(i); } The issue is that Hotspot also count the bytecodes related to assert in its inlining heuristic. If the assert is commented, the inlining tree is good. 88 2 b lambda.perf.Iterables::filterMapReduce (72 bytes) @ 4 java.util.AbstractList::iterator (10 bytes) inline (hot) @ 6 java.util.AbstractList$Itr:: (6 bytes) unloaded signature classes @ 61 java.util.AbstractList$Itr::hasNext (20 bytes) inline (hot) @ 8 java.util.Arrays$ArrayList::size (6 bytes) inline (hot) ! @ 16 java.util.AbstractList$Itr::next (45 bytes) inline (hot) @ 1 java.util.AbstractList$Itr::checkForComodification (23 bytes) inline (hot) @ 14 java.util.Arrays$ArrayList::get (7 bytes) inline (hot) @ 29 lambda.perf.Test$1::accept (9 bytes) inline (hot) @ 5 lambda.perf.Test$1::accept (13 bytes) inline (hot) @ 1 java.lang.Integer::intValue (5 bytes) inline (hot) @ 45 lambda.perf.Test$2::map (9 bytes) inline (hot) @ 5 lambda.perf.Test$2::map (2 bytes) inline (hot) @ 52 lambda.perf.Test$3::apply (13 bytes) inline (hot) @ 9 lambda.perf.Test$3::apply (13 bytes) inline (hot) @ 1 java.lang.Integer::intValue (5 bytes) inline (hot) @ 5 java.lang.Integer::intValue (5 bytes) inline (hot) @ 9 java.lang.Integer::valueOf (32 bytes) inline (hot) @ 28 java.lang.Integer:: (10 bytes) call site not reached @ 61 java.util.AbstractList$Itr::hasNext (20 bytes) inline (hot) @ 8 java.util.Arrays$ArrayList::size (6 bytes) inline (hot) Given that Integer.valueOf() is a method used very often and that if the inlining fails, the escape analysis will not remove the allocation, I think it's a good idea to comment this assert. cheers, R?mi From neugens.limasoftware at gmail.com Mon Apr 23 17:43:39 2012 From: neugens.limasoftware at gmail.com (Mario Torre) Date: Mon, 23 Apr 2012 19:43:39 +0200 Subject: Remove the assert in Integer.valueOf() In-Reply-To: <4F9592ED.3040309@univ-mlv.fr> References: <4F9592ED.3040309@univ-mlv.fr> Message-ID: 2012/4/23 R?mi Forax : > The issue is that Hotspot also count the bytecodes related to assert > in its inlining heuristic. > If the assert is commented, the inlining tree is good. [...] > Given that Integer.valueOf() is a method used very often and that if the > inlining fails, > the escape analysis will not remove the allocation, > I think it's a good idea to comment this assert. Hi R?mi, I'm not sure if it's a good idea or not to remove the assert. What happens if we replace the assert with a specific check, is it still not inlined? Cheers, Mario -- pgp key: http://subkeys.pgp.net/ PGP Key ID: 80F240CF Fingerprint: BA39 9666 94EC 8B73 27FA? FC7C 4086 63E3 80F2 40CF IcedRobot: www.icedrobot.org Proud GNU Classpath developer: http://www.classpath.org/ Read About us at: http://planet.classpath.org OpenJDK: http://openjdk.java.net/projects/caciocavallo/ Please, support open standards: http://endsoftpatents.org/ From forax at univ-mlv.fr Mon Apr 23 18:01:46 2012 From: forax at univ-mlv.fr (=?ISO-8859-1?Q?R=E9mi_Forax?=) Date: Mon, 23 Apr 2012 20:01:46 +0200 Subject: Remove the assert in Integer.valueOf() In-Reply-To: References: <4F9592ED.3040309@univ-mlv.fr> Message-ID: <4F95990A.1020706@univ-mlv.fr> On 04/23/2012 07:43 PM, Mario Torre wrote: > 2012/4/23 R?mi Forax: > >> The issue is that Hotspot also count the bytecodes related to assert >> in its inlining heuristic. >> If the assert is commented, the inlining tree is good. > [...] > >> Given that Integer.valueOf() is a method used very often and that if the >> inlining fails, >> the escape analysis will not remove the allocation, >> I think it's a good idea to comment this assert. > Hi R?mi, > > I'm not sure if it's a good idea or not to remove the assert. > > What happens if we replace the assert with a specific check, is it > still not inlined? > > Cheers, > Mario Hi Marrio, if you add a check, you augment the size of the bytecode and unluckily the Hostspot inlining heuristic is based on the size of the bytecode. I've also forgotten to mention that this assert is useless given the code the static block of Integer.IntegerCache. static final int low = -128; static final int high; static { // high value may be configured by property int h = 127; String integerCacheHighPropValue = sun.misc.VM.getSavedProperty("java.lang.Integer.IntegerCache.high"); if (integerCacheHighPropValue != null) { int i = parseInt(integerCacheHighPropValue); i = Math.max(i, 127); // Maximum array size is Integer.MAX_VALUE h = Math.min(i, Integer.MAX_VALUE - (-low)); } high = h; ... } cheers, R?mi From mandy.chung at oracle.com Mon Apr 23 19:36:04 2012 From: mandy.chung at oracle.com (Mandy Chung) Date: Mon, 23 Apr 2012 12:36:04 -0700 Subject: sun.management.Agent: the properties.putAll API may fail with ConcurrentModifcationException on multi-thread scenario In-Reply-To: <4F950A23.1070205@oracle.com> References: <4F853485.7020607@linux.vnet.ibm.com> <4F863945.7020701@oracle.com> <4F8D1CBC.5040205@linux.vnet.ibm.com> <4F8E5282.3070507@oracle.com> <4F8E5D34.8050901@linux.vnet.ibm.com> <4F94EE8B.8070101@linux.vnet.ibm.com> <4F94F70D.1060906@oracle.com> <4F94F880.2020206@oracle.com> <4F95080C.7090007@linux.vnet.ibm.com> <4F950A23.1070205@oracle.com> Message-ID: <4F95AF24.4070904@oracle.com> On 04/23/2012 02:36 PM, David Holmes wrote: > Except of course that Properties is a Hashtable and synchronizes on > 'this' for all public methods. So locking the properties object in the > client code will guarantee exclusive access to it. David, thanks for looking at this closer. I missed that all public methods of Hashtable are synchronized. On 4/23/2012 12:52 AM, David Holmes wrote: > > You can count me as a Reviewer, but it still needs sign-off from Mandy > as a serviceability representative. > I am not a serviceability representative (I was a member to that group). I'll defer this to the serviceability team sign off and sponsor your patch. There are a couple issues with the test. The test needs to be a jtreg test [1] (basically you need to add the jtreg tags) and should use the 4-space indentation. This new test case should be cleaned up so that it will exit with and without the bug fix. Your test currently loops forever when running with the JDK with your patch. This test should be able to run in samevm mode (other tests may run in the same VM with this test) and the threads this test starts should be cleaned up before the test exits. Mandy [1] http://openjdk.java.net/jtreg From Dmitry.Samersoff at oracle.com Mon Apr 23 15:56:46 2012 From: Dmitry.Samersoff at oracle.com (Dmitry Samersoff) Date: Mon, 23 Apr 2012 19:56:46 +0400 Subject: sun.management.Agent: the properties.putAll API may fail with ConcurrentModifcationException on multi-thread scenario In-Reply-To: <4F95AF24.4070904@oracle.com> References: <4F853485.7020607@linux.vnet.ibm.com> <4F863945.7020701@oracle.com> <4F8D1CBC.5040205@linux.vnet.ibm.com> <4F8E5282.3070507@oracle.com> <4F8E5D34.8050901@linux.vnet.ibm.com> <4F94EE8B.8070101@linux.vnet.ibm.com> <4F94F70D.1060906@oracle.com> <4F94F880.2020206@oracle.com> <4F95080C.7090007@linux.vnet.ibm.com> <4F950A23.1070205@oracle.com> <4F95AF24.4070904@oracle.com> Message-ID: <4F957BBE.9050607@oracle.com> Deven, Sorry for stepping latter. I'll sponsor this fix, but I need some time to take a close look at changes as I don't understand clearly why synchronization should help in this case. -Dmitry On 2012-04-23 23:36, Mandy Chung wrote: > On 04/23/2012 02:36 PM, David Holmes wrote: > > Except of course that Properties is a Hashtable and synchronizes on > > 'this' for all public methods. So locking the properties object in the > > client code will guarantee exclusive access to it. > > David, thanks for looking at this closer. I missed that all public > methods of Hashtable are synchronized. > > On 4/23/2012 12:52 AM, David Holmes wrote: >> >> You can count me as a Reviewer, but it still needs sign-off from Mandy >> as a serviceability representative. >> > > I am not a serviceability representative (I was a member to that group). > I'll defer this to the serviceability team sign off and sponsor your patch. > > There are a couple issues with the test. The test needs to be a jtreg > test [1] (basically you need to add the jtreg tags) and should use the > 4-space indentation. This new test case should be cleaned up so that it > will exit with and without the bug fix. Your test currently loops > forever when running with the JDK with your patch. This test should be > able to run in samevm mode (other tests may run in the same VM with this > test) and the threads this test starts should be cleaned up before the > test exits. > > Mandy > [1] http://openjdk.java.net/jtreg -- Dmitry Samersoff Java Hotspot development team, SPB04 * There will come soft rains ... From stadelma at datazug.ch Mon Apr 23 21:16:12 2012 From: stadelma at datazug.ch (Josef Stadelmann) Date: Mon, 23 Apr 2012 23:16:12 +0200 Subject: Port to HP Itanium OpenVMS Message-ID: <0a0801cd2196$4f617350$6a02a8c0@sema4.ch> Hi all, I am absolute new on OpenJDK forum. Intention: start a port to OpenVMS Itanium Question: which project has to be ported first, given that OpenVMS has a JDK 1.6.0_05 but does not have JDK 1.7.0_* Reason: It is unclear since Months, what HP's JAVA OpenVMS Roadmap will be. But we need to know where we have to go. Fact: Annotaions like @Requestwrapper or @Responsewrapper or @Addressing, used in Web Service Java Code i.e. Apache Axis2/JAXWS support, are having demand on JDK 7.0 / 8.0 which is not available for HP OpenVMS. Hence we can use Annotations only very limitted. Question 1: Where shall I start reading on OpenJDK? Question 2: Which OpenJDK project needs to be ported first to get on OpenVMS $ JAVA.EXE running? (i.e. executing i.e. older byte code) Any hints and redirections to the proper group / project / mailing list is very welcome. Josef.Stadelmann @axa-winterthur.ch From alexlamsl at gmail.com Mon Apr 23 22:32:41 2012 From: alexlamsl at gmail.com (Alex Lam S.L.) Date: Mon, 23 Apr 2012 23:32:41 +0100 Subject: Remove the assert in Integer.valueOf() In-Reply-To: <4F95990A.1020706@univ-mlv.fr> References: <4F9592ED.3040309@univ-mlv.fr> <4F95990A.1020706@univ-mlv.fr> Message-ID: Just curious - I am assuming that assertions are disabled during the test runs, so wouldn't one expect the "assert" statements to be ignored / removed? Obviously it didn't in this case, yet I thought we are expecting constant conditionals to be optimised, e.g. if (a == null) {...} to be removed if "a" can never be null? Alex. On Mon, Apr 23, 2012 at 7:01 PM, R?mi Forax wrote: > On 04/23/2012 07:43 PM, Mario Torre wrote: >> >> 2012/4/23 R?mi Forax: >> >>> The issue is that Hotspot also count the bytecodes related to assert >>> in its inlining heuristic. >>> If the assert is commented, the inlining tree is good. >> >> [...] >> >>> Given that Integer.valueOf() is a method used very often and that if the >>> inlining fails, >>> the escape analysis will not remove the allocation, >>> I think it's a good idea to comment this assert. >> >> Hi R?mi, >> >> I'm not sure if it's a good idea or not to remove the assert. >> >> What happens if we replace the assert with a specific check, is it >> still not inlined? >> >> Cheers, >> Mario > > > Hi Marrio, > if you add a check, you augment the size of the bytecode > and unluckily the Hostspot inlining heuristic is based on the size of the > bytecode. > > I've also forgotten to mention that this assert is useless given the code > the static block of Integer.IntegerCache. > > static final int low = -128; > ? ? ?static final int high; > static { > ? ? ? ? ? ?// high value may be configured by property > ? ? ? ? ? ?int h = 127; > ? ? ? ? ? ?String integerCacheHighPropValue = > > ?sun.misc.VM.getSavedProperty("java.lang.Integer.IntegerCache.high"); > ? ? ? ? ? ?if (integerCacheHighPropValue != null) { > ? ? ? ? ? ? ? ?int i = parseInt(integerCacheHighPropValue); > ? ? ? ? ? ? ? ?i = Math.max(i, 127); > ? ? ? ? ? ? ? ?// Maximum array size is Integer.MAX_VALUE > ? ? ? ? ? ? ? ?h = Math.min(i, Integer.MAX_VALUE - (-low)); > ? ? ? ? ? ?} > ? ? ? ? ? ?high = h; > > ? ? ? ? ? ?... > ? ? ? ?} > > cheers, > R?mi > From forax at univ-mlv.fr Mon Apr 23 23:23:41 2012 From: forax at univ-mlv.fr (=?UTF-8?B?UsOpbWkgRm9yYXg=?=) Date: Tue, 24 Apr 2012 01:23:41 +0200 Subject: Remove the assert in Integer.valueOf() In-Reply-To: References: <4F9592ED.3040309@univ-mlv.fr> <4F95990A.1020706@univ-mlv.fr> Message-ID: <4F95E47D.2010606@univ-mlv.fr> On 04/24/2012 12:32 AM, Alex Lam S.L. wrote: > Just curious - I am assuming that assertions are disabled during the > test runs, so wouldn't one expect the "assert" statements to be > ignored / removed? > > Obviously it didn't in this case, yet I thought we are expecting > constant conditionals to be optimised, e.g. if (a == null) {...} to be > removed if "a" can never be null? asserts like nullchecks that are never null are removed in the generated code but because the inlining heuristic uses the bytecode size of the method so these constructs may have an impact on the performance (note that in my example the call is deep in the inlining tree so at that point the JIT will only inline small methods). > > > Alex. R?mi From Ulf.Zibis at gmx.de Tue Apr 24 00:12:12 2012 From: Ulf.Zibis at gmx.de (Ulf Zibis) Date: Tue, 24 Apr 2012 02:12:12 +0200 Subject: Remove the assert in Integer.valueOf() In-Reply-To: <4F9592ED.3040309@univ-mlv.fr> References: <4F9592ED.3040309@univ-mlv.fr> Message-ID: <4F95EFDC.9090100@gmx.de> Hi R?mi, I think, instead tweaking the java code, Hotspot inlining heuristic should better be changed to count the bytes of the compiled code. Than any code would benefit from, not only Integer.valueOf(). -Ulf Am 23.04.2012 19:35, schrieb R?mi Forax: > Hi guys, > I've found a case where assert is harmful because it doesn't > play well with Hotspot inlining heuristic. > [...] > The issue is that Hotspot also count the bytecodes related to assert > in its inlining heuristic. > If the assert is commented, the inlining tree is good. > [...] > Given that Integer.valueOf() is a method used very often and that if the inlining fails, > the escape analysis will not remove the allocation, > I think it's a good idea to comment this assert. > > cheers, > R?mi From volker.simonis at gmail.com Tue Apr 24 08:35:22 2012 From: volker.simonis at gmail.com (Volker Simonis) Date: Tue, 24 Apr 2012 10:35:22 +0200 Subject: Port to HP Itanium OpenVMS In-Reply-To: <0a0801cd2196$4f617350$6a02a8c0@sema4.ch> References: <0a0801cd2196$4f617350$6a02a8c0@sema4.ch> Message-ID: Hi Josef, first of all, the right mailing list for your question would be porters-dev at openjdk.java.net (I've redirected this mail to the new list ) Porting to OpenVMS Itanium would be particularly hard, because it involves two steps: 1. porting to a new processor architecture (IA64) 2. porting to a new operating system For the first step (the Itanium port) you could try to Zero port which is part of the OpenJDK 7 (http://openjdk.java.net/projects/zero/, http://icedtea.classpath.org/wiki/ZeroSharkFaq). But you should be aware of the following facts: - as far as I know, Zero is currently unmaintained so it may be already difficult to even compile/build it - Zero is an "interpreter only" port so the performance may be not what you expect After you got the Zero port running on Linux/IA64 you could start with the OS port to OpenVMS. And bear in mind, creating a production-ready OpenJDK port to a new architecture/platform is a multi man-year project which requires deep assembler and system programming knowledge. Regards, Volker http://icedtea.classpath.org/wiki/ZeroSharkFaq On Mon, Apr 23, 2012 at 11:16 PM, Josef Stadelmann wrote: > Hi all, > > I am absolute new on OpenJDK forum. > > Intention: start a port to OpenVMS Itanium > > Question: which project has to be ported first, given that OpenVMS has a JDK 1.6.0_05 but does not have JDK 1.7.0_* > > Reason: It is unclear since Months, what HP's JAVA OpenVMS Roadmap will be. But we need to know where we have to go. > > Fact: Annotaions like @Requestwrapper or @Responsewrapper or @Addressing, used in Web Service Java Code i.e. Apache Axis2/JAXWS support, are having demand on JDK 7.0 / 8.0 ?which is not available for HP OpenVMS. Hence we can use Annotations only very limitted. > > Question 1: Where shall I start reading on OpenJDK? > Question 2: Which OpenJDK project needs to be ported first to get on OpenVMS $ JAVA.EXE running? > ? ? ? ? ? ? ? ? (i.e. executing i.e. older byte code) > > Any hints and redirections to the proper group / project / mailing list is very welcome. > > Josef.Stadelmann > @axa-winterthur.ch From Dmitry.Samersoff at oracle.com Tue Apr 24 12:15:15 2012 From: Dmitry.Samersoff at oracle.com (Dmitry Samersoff) Date: Tue, 24 Apr 2012 16:15:15 +0400 Subject: sun.management.Agent: the properties.putAll API may fail with ConcurrentModifcationException on multi-thread scenario In-Reply-To: <4F95080C.7090007@linux.vnet.ibm.com> References: <4F853485.7020607@linux.vnet.ibm.com> <4F863945.7020701@oracle.com> <4F8D1CBC.5040205@linux.vnet.ibm.com> <4F8E5282.3070507@oracle.com> <4F8E5D34.8050901@linux.vnet.ibm.com> <4F94EE8B.8070101@linux.vnet.ibm.com> <4F94F70D.1060906@oracle.com> <4F94F880.2020206@oracle.com> <4F95080C.7090007@linux.vnet.ibm.com> Message-ID: <4F969953.9090107@oracle.com> Deven, After close look and off-line discussion with David Holmes, the changes looks good for me. I'll take care of the rest. We have one more place in Agent.java executing exactly the same code so I'll change both of them on your behalf. -Dmitry On 2012-04-23 11:43, Deven You wrote: > Thanks David, > > So is it ok for you to contribute this patch? > > On 04/23/2012 02:36 PM, David Holmes wrote: >> Except of course that Properties is a Hashtable and synchronizes on >> 'this' for all public methods. So locking the properties object in the >> client code will guarantee exclusive access to it. >> >> Sorry about that. >> >> David >> ----- >> >> On 23/04/2012 4:30 PM, David Holmes wrote: >>> Deven, >>> >>> On 23/04/2012 3:54 PM, Deven You wrote: >>>> On 04/18/2012 02:20 PM, Deven You wrote: >>>>> On 04/18/2012 01:34 PM, Mandy Chung wrote: >>>>>> >>>>>> >>>>>> I think this could still run into CME. System Properties is not a >>>>>> synchronized map and the setter methods (System.setProperty or >>>>>> Properties.put method) doesn't synchronize on the Properties object. >>>>>> >>>>>> >>>>>> The setter methods I'm referring to are System.setProperty and >>>>>> System.getProperties().put(). >>>>>> >>>>> >>>>> I have gone through the Agent.java, I think other set/put methods >>>>> related to properties are protected properly. >>>>> >>>>> public static void agentmain using parseString(args) which return a >>>>> properties which is a local var and is not possible to cause >>>>> concurrent problem when call config_props.putAll(arg_props). >>>>> >>>>> private static synchronized void startLocalManagementAgent() is >>>>> synchronized already. >>>>> >>>>> private static synchronized void startRemoteManagementAgent(String >>>>> args) is synchronized also. >>>>> >>>>> Could you point where the CME may ocurr? >>>> >>>> Is there any suggestion from the mailing list? >>> >>> The problem is that System.getProperties() returns a globally accessible >>> set of properties. So even if you prevent the Agent code from modifying >>> those properties concurrently with other use in the Agent, you have no >>> such guard for any other piece of code in the system which might also >>> modify the properties. So the race condition you were trying to fix >>> still exists. I don't see any way to fix this. No matter what you do >>> another thread can modify the system properties while you are iterating >>> them. Instead you need to anticipate the CME and try to recover from it >>> (also non-trivial). >>> >>> Cheers, >>> David Holmes >> > > -- Dmitry Samersoff Java Hotspot development team, SPB04 * There will come soft rains ... From littlee at linux.vnet.ibm.com Tue Apr 24 13:07:08 2012 From: littlee at linux.vnet.ibm.com (littlee at linux.vnet.ibm.com) Date: Tue, 24 Apr 2012 13:07:08 +0000 Subject: hg: jdk8/tl/jdk: 7163865: Performance improvement for DateFormatSymbols.getZoneIndex(String) Message-ID: <20120424130734.C7F0747236@hg.openjdk.java.net> Changeset: 2c35304e885a Author: youdwei Date: 2012-04-24 21:06 +0800 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/2c35304e885a 7163865: Performance improvement for DateFormatSymbols.getZoneIndex(String) Reviewed-by: okutsu ! src/share/classes/java/text/DateFormatSymbols.java From forax at univ-mlv.fr Tue Apr 24 13:56:24 2012 From: forax at univ-mlv.fr (=?ISO-8859-1?Q?R=E9mi_Forax?=) Date: Tue, 24 Apr 2012 15:56:24 +0200 Subject: Remove the assert in Integer.valueOf() In-Reply-To: <4F95EFDC.9090100@gmx.de> References: <4F9592ED.3040309@univ-mlv.fr> <4F95EFDC.9090100@gmx.de> Message-ID: <4F96B108.70406@univ-mlv.fr> On 04/24/2012 02:12 AM, Ulf Zibis wrote: > Hi R?mi, > > I think, instead tweaking the java code, Hotspot inlining heuristic > should better be changed to count the bytes of the compiled code. > Than any code would benefit from, not only Integer.valueOf(). > > -Ulf Here, I don't really ask for tweaking something but more to remove an assert which do something which is unrelated to the current algorithm. In my opinion, it's a debug assert used during the development that slip into the production code. The fact that the range [-128, 127] should be covered by the cache is mandated by the JLS, but if you really want an assert you should move it when high and low are initialized (they are final) and not where they are used. I also agree that the inlining heuristic should be changed and I'm sure that everybody that have looked to the inlining heuristic code of Hotspot will agree with that but this is somehow unrelated to the problem. This is how I've found this assert, it doesn't change the fact that this assert should not be there. R?mi > > > Am 23.04.2012 19:35, schrieb R?mi Forax: >> Hi guys, >> I've found a case where assert is harmful because it doesn't >> play well with Hotspot inlining heuristic. >> [...] >> The issue is that Hotspot also count the bytecodes related to assert >> in its inlining heuristic. >> If the assert is commented, the inlining tree is good. >> [...] >> Given that Integer.valueOf() is a method used very often and that if >> the inlining fails, >> the escape analysis will not remove the allocation, >> I think it's a good idea to comment this assert. >> >> cheers, >> R?mi From Alan.Bateman at oracle.com Tue Apr 24 15:01:50 2012 From: Alan.Bateman at oracle.com (Alan Bateman) Date: Tue, 24 Apr 2012 16:01:50 +0100 Subject: Remove the assert in Integer.valueOf() In-Reply-To: <4F96B108.70406@univ-mlv.fr> References: <4F9592ED.3040309@univ-mlv.fr> <4F95EFDC.9090100@gmx.de> <4F96B108.70406@univ-mlv.fr> Message-ID: <4F96C05E.6040001@oracle.com> On 24/04/2012 14:56, R?mi Forax wrote: > > Here, I don't really ask for tweaking something but more to remove an > assert > which do something which is unrelated to the current algorithm. > In my opinion, it's a debug assert used during the development > that slip into the production code. The fact that the range [-128, > 127] should be > covered by the cache is mandated by the JLS, but if you really want an > assert > you should move it when high and low are initialized (they are final) > and not where they are used. > > I also agree that the inlining heuristic should be changed and > I'm sure that everybody that have looked to the inlining heuristic > code of Hotspot will agree with that > but this is somehow unrelated to the problem. > This is how I've found this assert, > it doesn't change the fact that this assert should not be there. I added that assert as part of the work of 6807702. You can't use asserts in code that is executed before system initialization is complete and I think this is why we put the assert is valueOf rather than in the initializer. I don't have any objection to removing it, assuming Joe is okay with it too. -Alan [1] http://hg.openjdk.java.net/jdk8/tl/jdk/rev/4c3f752993a5 From Ulf.Zibis at gmx.de Tue Apr 24 15:06:27 2012 From: Ulf.Zibis at gmx.de (Ulf Zibis) Date: Tue, 24 Apr 2012 17:06:27 +0200 Subject: Remove the assert in Integer.valueOf() In-Reply-To: <4F96B108.70406@univ-mlv.fr> References: <4F9592ED.3040309@univ-mlv.fr> <4F95EFDC.9090100@gmx.de> <4F96B108.70406@univ-mlv.fr> Message-ID: <4F96C173.7000404@gmx.de> Am 24.04.2012 15:56, schrieb R?mi Forax: > Here, I don't really ask for tweaking something but more to remove an assert > which do something which is unrelated to the current algorithm. > In my opinion, it's a debug assert used during the development > that slip into the production code. The fact that the range [-128, 127] should be > covered by the cache is mandated by the JLS, but if you really want an assert > you should move it when high and low are initialized (they are final) > and not where they are used. > > I also agree that the inlining heuristic should be changed and > I'm sure that everybody that have looked to the inlining heuristic code of Hotspot will agree with > that > but this is somehow unrelated to the problem. > This is how I've found this assert, > it doesn't change the fact that this assert should not be there. > > R?mi Thanks R?mi! OT: It would be an interesting discussion: "What is a debug assert, and what not". -Ulf From kumar.x.srinivasan at oracle.COM Tue Apr 24 15:24:43 2012 From: kumar.x.srinivasan at oracle.COM (Kumar Srinivasan) Date: Tue, 24 Apr 2012 08:24:43 -0700 Subject: Please review: 7151434: java -jar -XX crashes java launcher Message-ID: <4F96C5BB.8070502@oracle.COM> Hi, Could you please review this, actually the launcher is a 2 line change, but when I was testing/experimenting with this, it was hard to inspect the .jtr file for test failure, the test framework is cleanup to help the reader quickly identify the failing test cases. http://cr.openjdk.java.net/~ksrini/7151434 Thanks Kumar From mandy.chung at oracle.com Tue Apr 24 15:48:43 2012 From: mandy.chung at oracle.com (Mandy Chung) Date: Tue, 24 Apr 2012 08:48:43 -0700 Subject: Please review: 7151434: java -jar -XX crashes java launcher In-Reply-To: <4F96C5BB.8070502@oracle.COM> References: <4F96C5BB.8070502@oracle.COM> Message-ID: <4F96CB5B.7070105@oracle.com> Looks good to me. Mandy On 4/24/2012 8:24 AM, Kumar Srinivasan wrote: > Hi, > > Could you please review this, actually the launcher is a 2 line change, > but when I was testing/experimenting with this, it was hard to inspect > the .jtr file for test failure, the test framework is cleanup to help the > reader quickly identify the failing test cases. > > http://cr.openjdk.java.net/~ksrini/7151434 > > Thanks > Kumar > > From joe.darcy at oracle.com Tue Apr 24 15:54:29 2012 From: joe.darcy at oracle.com (Joe Darcy) Date: Tue, 24 Apr 2012 08:54:29 -0700 Subject: Please review: 7151434: java -jar -XX crashes java launcher In-Reply-To: <4F96C5BB.8070502@oracle.COM> References: <4F96C5BB.8070502@oracle.COM> Message-ID: <4F96CCB5.4020900@oracle.com> Hi Kumar, The launcher changes looks fine, but I recommend generally documenting the null-handling protocol in these sort of functions. We generally don't include bug ids in the next of the test, but I see the test file does that in other areas. Cheers, -Joe On 04/24/2012 08:24 AM, Kumar Srinivasan wrote: > Hi, > > Could you please review this, actually the launcher is a 2 line change, > but when I was testing/experimenting with this, it was hard to inspect > the .jtr file for test failure, the test framework is cleanup to help the > reader quickly identify the failing test cases. > > http://cr.openjdk.java.net/~ksrini/7151434 > > Thanks > Kumar > > From kumar.x.srinivasan at oracle.com Tue Apr 24 18:21:18 2012 From: kumar.x.srinivasan at oracle.com (kumar.x.srinivasan at oracle.com) Date: Tue, 24 Apr 2012 18:21:18 +0000 Subject: hg: jdk8/tl/jdk: 7151434: java -jar -XX crashes java launcher Message-ID: <20120424182136.1741947243@hg.openjdk.java.net> Changeset: f68c854fa584 Author: ksrini Date: 2012-04-24 10:37 -0700 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/f68c854fa584 7151434: java -jar -XX crashes java launcher Reviewed-by: mchung, darcy ! src/share/bin/java.c ! test/tools/launcher/Arrrghs.java ! test/tools/launcher/TestHelper.java From kurchi.subhra.hazra at oracle.com Tue Apr 24 21:49:43 2012 From: kurchi.subhra.hazra at oracle.com (Kurchi Hazra) Date: Tue, 24 Apr 2012 14:49:43 -0700 Subject: Code Review Request: 7160242: (prefs) Preferences.remove(null) does not throw NPE [macosx] In-Reply-To: <4F9298BD.3070605@univ-mlv.fr> References: <4F91B1C1.5050200@oracle.com> <4F91B483.3030205@oracle.com> <4F926720.9070608@oracle.com> <4F9298BD.3070605@univ-mlv.fr> Message-ID: <4F971FF7.3060807@oracle.com> Hi, Updated webrev: http://cr.openjdk.java.net/~khazra/7160242/webrev.01/ Thanks, Kurchi On 4/21/2012 4:23 AM, R?mi Forax wrote: > On 04/21/2012 09:52 AM, Alan Bateman wrote: >> On 20/04/2012 20:09, Kurchi Subhra Hazra wrote: >>> Hi, >>> >>> This change inserts a null check for the key being passed to >>> Preferences.remove() on Mac, so that >>> the method throws a NullPointerException when key is null (according >>> to its specification). >>> >>> Bug: http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=7160242 >>> Webrev: http://cr.openjdk.java.net/~khazra/7160242/webrev.00/ >>> Thanks, Kurchi >> Kurchi - would you be able to add a test to test/java/util/prefs so >> that we have coverage for this case? >> >> -Alan. > > Also you can use Objects.requireNonNull() > http://docs.oracle.com/javase/7/docs/api/java/util/Objects.html#requireNonNull%28T,%20java.lang.String%29 > > > R?mi > -- -Kurchi From kurchi.subhra.hazra at oracle.com Tue Apr 24 22:01:03 2012 From: kurchi.subhra.hazra at oracle.com (kurchi.subhra.hazra at oracle.com) Date: Tue, 24 Apr 2012 22:01:03 +0000 Subject: hg: jdk8/tl/jdk: 7144274: [macosx] Default IPv6 multicast interface is not being set when calling MulticastSocket.joinGroup() Message-ID: <20120424220122.C5A824724D@hg.openjdk.java.net> Changeset: fcdbd1f34309 Author: khazra Date: 2012-04-24 14:59 -0700 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/fcdbd1f34309 7144274: [macosx] Default IPv6 multicast interface is not being set when calling MulticastSocket.joinGroup() Summary: Get default interface for Mac OS X when interface is not set Reviewed-by: chegar ! src/solaris/native/java/net/PlainDatagramSocketImpl.c ! src/solaris/native/java/net/net_util_md.c From forax at univ-mlv.fr Tue Apr 24 22:07:14 2012 From: forax at univ-mlv.fr (=?ISO-8859-1?Q?R=E9mi_Forax?=) Date: Wed, 25 Apr 2012 00:07:14 +0200 Subject: Code Review Request: 7160242: (prefs) Preferences.remove(null) does not throw NPE [macosx] In-Reply-To: <4F971FF7.3060807@oracle.com> References: <4F91B1C1.5050200@oracle.com> <4F91B483.3030205@oracle.com> <4F926720.9070608@oracle.com> <4F9298BD.3070605@univ-mlv.fr> <4F971FF7.3060807@oracle.com> Message-ID: <4F972412.2050506@univ-mlv.fr> On 04/24/2012 11:49 PM, Kurchi Hazra wrote: > Hi, > > Updated webrev: > http://cr.openjdk.java.net/~khazra/7160242/webrev.01/ > > Thanks, > Kurchi Hi Kurchi, Object.requireNonNull() return the first argument, so there is no need to store it again in key. So instead of key = Objects.requireNonNull(key, "Specified key cannot be null"); you can just write: Objects.requireNonNull(key, "Specified key cannot be null"); or if you want to reuse the return value (it's less readable in my opinion) you can write : file.removeKeyFromNode(path, Objects.requireNonNull(key, "Specified key cannot be null")); but usually, this feature is used in constructor, something like this : class Person { ... public Person(String name) { this.name = Objects.requireNonNull(name); } } cheers, R?mi > > On 4/21/2012 4:23 AM, R?mi Forax wrote: >> On 04/21/2012 09:52 AM, Alan Bateman wrote: >>> On 20/04/2012 20:09, Kurchi Subhra Hazra wrote: >>>> Hi, >>>> >>>> This change inserts a null check for the key being passed to >>>> Preferences.remove() on Mac, so that >>>> the method throws a NullPointerException when key is null >>>> (according to its specification). >>>> >>>> Bug: http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=7160242 >>>> Webrev: http://cr.openjdk.java.net/~khazra/7160242/webrev.00/ >>>> Thanks, Kurchi >>> Kurchi - would you be able to add a test to test/java/util/prefs so >>> that we have coverage for this case? >>> >>> -Alan. >> >> Also you can use Objects.requireNonNull() >> http://docs.oracle.com/javase/7/docs/api/java/util/Objects.html#requireNonNull%28T,%20java.lang.String%29 >> >> >> R?mi >> > From kurchi.subhra.hazra at oracle.com Tue Apr 24 22:20:27 2012 From: kurchi.subhra.hazra at oracle.com (Kurchi Hazra) Date: Tue, 24 Apr 2012 15:20:27 -0700 Subject: Code Review Request: 7160242: (prefs) Preferences.remove(null) does not throw NPE [macosx] In-Reply-To: <4F972412.2050506@univ-mlv.fr> References: <4F91B1C1.5050200@oracle.com> <4F91B483.3030205@oracle.com> <4F926720.9070608@oracle.com> <4F9298BD.3070605@univ-mlv.fr> <4F971FF7.3060807@oracle.com> <4F972412.2050506@univ-mlv.fr> Message-ID: <4F97272B.8080009@oracle.com> Thanks Remi. I changed it: http://cr.openjdk.java.net/~khazra/7160242/webrev.02/ Can you also point out what advantage using Object.requireNonNull has over simply doing a key == null check as I was doing before? Thanks, Kurchi On 4/24/2012 3:07 PM, R?mi Forax wrote: > On 04/24/2012 11:49 PM, Kurchi Hazra wrote: >> Hi, >> >> Updated webrev: >> http://cr.openjdk.java.net/~khazra/7160242/webrev.01/ >> >> Thanks, >> Kurchi > > Hi Kurchi, > Object.requireNonNull() return the first argument, > so there is no need to store it again in key. > So instead of > > key = Objects.requireNonNull(key, "Specified key cannot be null"); > > you can just write: > > Objects.requireNonNull(key, "Specified key cannot be null"); > > or if you want to reuse the return value (it's less readable in my > opinion) > you can write : > > file.removeKeyFromNode(path, > Objects.requireNonNull(key, "Specified key cannot be null")); > > but usually, this feature is used in constructor, > something like this : > > class Person { > ... > public Person(String name) { > this.name = Objects.requireNonNull(name); > } > } > > cheers, > R?mi > >> >> On 4/21/2012 4:23 AM, R?mi Forax wrote: >>> On 04/21/2012 09:52 AM, Alan Bateman wrote: >>>> On 20/04/2012 20:09, Kurchi Subhra Hazra wrote: >>>>> Hi, >>>>> >>>>> This change inserts a null check for the key being passed to >>>>> Preferences.remove() on Mac, so that >>>>> the method throws a NullPointerException when key is null >>>>> (according to its specification). >>>>> >>>>> Bug: http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=7160242 >>>>> Webrev: http://cr.openjdk.java.net/~khazra/7160242/webrev.00/ >>>>> Thanks, Kurchi >>>> Kurchi - would you be able to add a test to test/java/util/prefs so >>>> that we have coverage for this case? >>>> >>>> -Alan. >>> >>> Also you can use Objects.requireNonNull() >>> http://docs.oracle.com/javase/7/docs/api/java/util/Objects.html#requireNonNull%28T,%20java.lang.String%29 >>> >>> >>> R?mi >>> >> > -- -Kurchi From forax at univ-mlv.fr Tue Apr 24 22:44:58 2012 From: forax at univ-mlv.fr (=?ISO-8859-1?Q?R=E9mi_Forax?=) Date: Wed, 25 Apr 2012 00:44:58 +0200 Subject: Code Review Request: 7160242: (prefs) Preferences.remove(null) does not throw NPE [macosx] In-Reply-To: <4F97272B.8080009@oracle.com> References: <4F91B1C1.5050200@oracle.com> <4F91B483.3030205@oracle.com> <4F926720.9070608@oracle.com> <4F9298BD.3070605@univ-mlv.fr> <4F971FF7.3060807@oracle.com> <4F972412.2050506@univ-mlv.fr> <4F97272B.8080009@oracle.com> Message-ID: <4F972CEA.2000506@univ-mlv.fr> On 04/25/2012 12:20 AM, Kurchi Hazra wrote: > Thanks Remi. I changed it: > http://cr.openjdk.java.net/~khazra/7160242/webrev.02/ Thumb up. > > Can you also point out what advantage using Object.requireNonNull has > over simply doing a key == null check as I was doing before? Josh Bloch words are better than mine: http://mail.openjdk.java.net/pipermail/core-libs-dev/2009-October/002891.html > > Thanks, > Kurchi cheers, R?mi > > On 4/24/2012 3:07 PM, R?mi Forax wrote: >> On 04/24/2012 11:49 PM, Kurchi Hazra wrote: >>> Hi, >>> >>> Updated webrev: >>> http://cr.openjdk.java.net/~khazra/7160242/webrev.01/ >>> >>> Thanks, >>> Kurchi >> >> Hi Kurchi, >> Object.requireNonNull() return the first argument, >> so there is no need to store it again in key. >> So instead of >> >> key = Objects.requireNonNull(key, "Specified key cannot be null"); >> >> you can just write: >> >> Objects.requireNonNull(key, "Specified key cannot be null"); >> >> or if you want to reuse the return value (it's less readable in my >> opinion) >> you can write : >> >> file.removeKeyFromNode(path, >> Objects.requireNonNull(key, "Specified key cannot be null")); >> >> but usually, this feature is used in constructor, >> something like this : >> >> class Person { >> ... >> public Person(String name) { >> this.name = Objects.requireNonNull(name); >> } >> } >> >> cheers, >> R?mi >> >>> >>> On 4/21/2012 4:23 AM, R?mi Forax wrote: >>>> On 04/21/2012 09:52 AM, Alan Bateman wrote: >>>>> On 20/04/2012 20:09, Kurchi Subhra Hazra wrote: >>>>>> Hi, >>>>>> >>>>>> This change inserts a null check for the key being passed to >>>>>> Preferences.remove() on Mac, so that >>>>>> the method throws a NullPointerException when key is null >>>>>> (according to its specification). >>>>>> >>>>>> Bug: http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=7160242 >>>>>> Webrev: http://cr.openjdk.java.net/~khazra/7160242/webrev.00/ >>>>>> Thanks, Kurchi >>>>> Kurchi - would you be able to add a test to test/java/util/prefs >>>>> so that we have coverage for this case? >>>>> >>>>> -Alan. >>>> >>>> Also you can use Objects.requireNonNull() >>>> http://docs.oracle.com/javase/7/docs/api/java/util/Objects.html#requireNonNull%28T,%20java.lang.String%29 >>>> >>>> >>>> R?mi >>>> >>> >> > From chris.hegarty at oracle.com Wed Apr 25 08:13:51 2012 From: chris.hegarty at oracle.com (Chris Hegarty) Date: Wed, 25 Apr 2012 09:13:51 +0100 Subject: Code Review Request: 7160242: (prefs) Preferences.remove(null) does not throw NPE [macosx] In-Reply-To: <4F972CEA.2000506@univ-mlv.fr> References: <4F91B1C1.5050200@oracle.com> <4F91B483.3030205@oracle.com> <4F926720.9070608@oracle.com> <4F9298BD.3070605@univ-mlv.fr> <4F971FF7.3060807@oracle.com> <4F972412.2050506@univ-mlv.fr> <4F97272B.8080009@oracle.com> <4F972CEA.2000506@univ-mlv.fr> Message-ID: <4F97B23F.7030100@oracle.com> On 24/04/12 23:44, R?mi Forax wrote: > On 04/25/2012 12:20 AM, Kurchi Hazra wrote: >> Thanks Remi. I changed it: >> http://cr.openjdk.java.net/~khazra/7160242/webrev.02/ > > Thumb up. +1. I also really like requireNonNull. To me its less verbose, cleaner, and the intent is easily understood. The jtreg tags/comments look a little funny, but shouldn't cause a problem. Typically we something like ( note the extra stars! ). /* @test * @bug 7160242 * @summary Check if NullPointerException is thrown if the key passed * to remove() is null. */ Anyway, looks like you are good to push. -Chris. > >> >> Can you also point out what advantage using Object.requireNonNull has >> over simply doing a key == null check as I was doing before? > > Josh Bloch words are better than mine: > http://mail.openjdk.java.net/pipermail/core-libs-dev/2009-October/002891.html > > >> >> Thanks, >> Kurchi > > cheers, > R?mi > >> >> On 4/24/2012 3:07 PM, R?mi Forax wrote: >>> On 04/24/2012 11:49 PM, Kurchi Hazra wrote: >>>> Hi, >>>> >>>> Updated webrev: >>>> http://cr.openjdk.java.net/~khazra/7160242/webrev.01/ >>>> >>>> Thanks, >>>> Kurchi >>> >>> Hi Kurchi, >>> Object.requireNonNull() return the first argument, >>> so there is no need to store it again in key. >>> So instead of >>> >>> key = Objects.requireNonNull(key, "Specified key cannot be null"); >>> >>> you can just write: >>> >>> Objects.requireNonNull(key, "Specified key cannot be null"); >>> >>> or if you want to reuse the return value (it's less readable in my >>> opinion) >>> you can write : >>> >>> file.removeKeyFromNode(path, >>> Objects.requireNonNull(key, "Specified key cannot be null")); >>> >>> but usually, this feature is used in constructor, >>> something like this : >>> >>> class Person { >>> ... >>> public Person(String name) { >>> this.name = Objects.requireNonNull(name); >>> } >>> } >>> >>> cheers, >>> R?mi >>> >>>> >>>> On 4/21/2012 4:23 AM, R?mi Forax wrote: >>>>> On 04/21/2012 09:52 AM, Alan Bateman wrote: >>>>>> On 20/04/2012 20:09, Kurchi Subhra Hazra wrote: >>>>>>> Hi, >>>>>>> >>>>>>> This change inserts a null check for the key being passed to >>>>>>> Preferences.remove() on Mac, so that >>>>>>> the method throws a NullPointerException when key is null >>>>>>> (according to its specification). >>>>>>> >>>>>>> Bug: http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=7160242 >>>>>>> Webrev: http://cr.openjdk.java.net/~khazra/7160242/webrev.00/ >>>>>>> Thanks, Kurchi >>>>>> Kurchi - would you be able to add a test to test/java/util/prefs >>>>>> so that we have coverage for this case? >>>>>> >>>>>> -Alan. >>>>> >>>>> Also you can use Objects.requireNonNull() >>>>> http://docs.oracle.com/javase/7/docs/api/java/util/Objects.html#requireNonNull%28T,%20java.lang.String%29 >>>>> >>>>> >>>>> R?mi >>>>> >>>> >>> >> > From Alan.Bateman at oracle.com Wed Apr 25 08:46:12 2012 From: Alan.Bateman at oracle.com (Alan Bateman) Date: Wed, 25 Apr 2012 09:46:12 +0100 Subject: Code Review Request: 7160242: (prefs) Preferences.remove(null) does not throw NPE [macosx] In-Reply-To: <4F97272B.8080009@oracle.com> References: <4F91B1C1.5050200@oracle.com> <4F91B483.3030205@oracle.com> <4F926720.9070608@oracle.com> <4F9298BD.3070605@univ-mlv.fr> <4F971FF7.3060807@oracle.com> <4F972412.2050506@univ-mlv.fr> <4F97272B.8080009@oracle.com> Message-ID: <4F97B9D4.5020709@oracle.com> On 24/04/2012 23:20, Kurchi Hazra wrote: > Thanks Remi. I changed it: > http://cr.openjdk.java.net/~khazra/7160242/webrev.02/ > > Can you also point out what advantage using Object.requireNonNull has > over simply doing a key == null check as I was doing before? The change looks fine to me; I thought original change was fine too (Objects.requiresNonNull reduces the verbosity in many cases but much of much of a muchness in this case). Thanks for adding a test. One thing is catching the exception at L41 - that can will potentially hide other exceptions so I suggest removing it, if some other exception is thrown then the test will fail. Minor nit is you are missing a space in "catch(" at L39. No need to re-generate the webrev for these comments. -Alan. From weijun.wang at oracle.com Wed Apr 25 10:05:38 2012 From: weijun.wang at oracle.com (Weijun Wang) Date: Wed, 25 Apr 2012 18:05:38 +0800 Subject: A nice cross-locale same-width DateTime.toString()? Message-ID: <4F97CC72.9070108@oracle.com> Hi All We have a command line tool that needs to print out date/time in a table. The current Date.toString() always has the same width and it's beautiful: 76 Tue Nov 10 08:57:54 CST 2009 bin/vbin/go 1149 Sun Apr 08 16:03:20 CST 2012 bin/vbin/netbeans 170 Fri Nov 20 16:47:42 CST 2009 bin/vbin/syncdown 671 Wed Feb 08 20:11:22 CST 2012 bin/vbin/ssh.desktop 187 Fri Nov 20 16:47:34 CST 2009 bin/vbin/syncsf However, both the DOW and MON are English and might make non-English users unhappy. On the other hand, DateFormat.getDateTimeInstance() knows about locale but the output is not the same width. 76 Nov 10, 2009 8:57:54 AM bin/vbin/go 1149 Apr 8, 2012 4:03:20 PM bin/vbin/netbeans 170 Nov 20, 2009 4:47:42 PM bin/vbin/syncdown 671 Feb 8, 2012 8:11:22 PM bin/vbin/ssh.desktop 187 Nov 20, 2009 4:47:34 PM bin/vbin/syncsf or when -Duser.language=fr 76 10 nov. 2009 08:57:54 bin/vbin/go 1149 8 avr. 2012 16:03:20 bin/vbin/netbeans 170 20 nov. 2009 16:47:42 bin/vbin/syncdown 671 8 f?vr. 2012 20:11:22 bin/vbin/ssh.desktop 187 20 nov. 2009 16:47:34 bin/vbin/syncsf Is there a nice way to make the output same width and locale aware? I can wait for JDK 8. Thanks Max From Dmitry.Samersoff at oracle.com Wed Apr 25 12:32:30 2012 From: Dmitry.Samersoff at oracle.com (Dmitry Samersoff) Date: Wed, 25 Apr 2012 16:32:30 +0400 Subject: sun.management.Agent: the properties.putAll API may fail with ConcurrentModifcationException on multi-thread scenario In-Reply-To: <4F969953.9090107@oracle.com> References: <4F853485.7020607@linux.vnet.ibm.com> <4F863945.7020701@oracle.com> <4F8D1CBC.5040205@linux.vnet.ibm.com> <4F8E5282.3070507@oracle.com> <4F8E5D34.8050901@linux.vnet.ibm.com> <4F94EE8B.8070101@linux.vnet.ibm.com> <4F94F70D.1060906@oracle.com> <4F94F880.2020206@oracle.com> <4F95080C.7090007@linux.vnet.ibm.com> <4F969953.9090107@oracle.com> Message-ID: <4F97EEDE.7050102@oracle.com> Deven, CR number is 7164191 . Could you re-send me your original e-mail with problem description and webrev link. I'll put it to CR comment field. -Dmitry On 2012-04-24 16:15, Dmitry Samersoff wrote: > Deven, > > After close look and off-line discussion with David Holmes, > the changes looks good for me. > > I'll take care of the rest. > > We have one more place in Agent.java executing exactly the same code > so I'll change both of them on your behalf. > > -Dmitry > > > On 2012-04-23 11:43, Deven You wrote: >> Thanks David, >> >> So is it ok for you to contribute this patch? >> >> On 04/23/2012 02:36 PM, David Holmes wrote: >>> Except of course that Properties is a Hashtable and synchronizes on >>> 'this' for all public methods. So locking the properties object in the >>> client code will guarantee exclusive access to it. >>> >>> Sorry about that. >>> >>> David >>> ----- >>> >>> On 23/04/2012 4:30 PM, David Holmes wrote: >>>> Deven, >>>> >>>> On 23/04/2012 3:54 PM, Deven You wrote: >>>>> On 04/18/2012 02:20 PM, Deven You wrote: >>>>>> On 04/18/2012 01:34 PM, Mandy Chung wrote: >>>>>>> >>>>>>> >>>>>>> I think this could still run into CME. System Properties is not a >>>>>>> synchronized map and the setter methods (System.setProperty or >>>>>>> Properties.put method) doesn't synchronize on the Properties object. >>>>>>> >>>>>>> >>>>>>> The setter methods I'm referring to are System.setProperty and >>>>>>> System.getProperties().put(). >>>>>>> >>>>>> >>>>>> I have gone through the Agent.java, I think other set/put methods >>>>>> related to properties are protected properly. >>>>>> >>>>>> public static void agentmain using parseString(args) which return a >>>>>> properties which is a local var and is not possible to cause >>>>>> concurrent problem when call config_props.putAll(arg_props). >>>>>> >>>>>> private static synchronized void startLocalManagementAgent() is >>>>>> synchronized already. >>>>>> >>>>>> private static synchronized void startRemoteManagementAgent(String >>>>>> args) is synchronized also. >>>>>> >>>>>> Could you point where the CME may ocurr? >>>>> >>>>> Is there any suggestion from the mailing list? >>>> >>>> The problem is that System.getProperties() returns a globally >>>> accessible >>>> set of properties. So even if you prevent the Agent code from modifying >>>> those properties concurrently with other use in the Agent, you have no >>>> such guard for any other piece of code in the system which might also >>>> modify the properties. So the race condition you were trying to fix >>>> still exists. I don't see any way to fix this. No matter what you do >>>> another thread can modify the system properties while you are iterating >>>> them. Instead you need to anticipate the CME and try to recover from it >>>> (also non-trivial). >>>> >>>> Cheers, >>>> David Holmes >>> >> >> > > -- Dmitry Samersoff Java Hotspot development team, SPB04 * There will come soft rains ... From sreich at mac.com Wed Apr 25 19:07:49 2012 From: sreich at mac.com (Stefan Reich) Date: Wed, 25 Apr 2012 12:07:49 -0700 Subject: Proposed refactoring: introduce JLS7 language features to core libs In-Reply-To: <7BCF83EB-75F1-46A6-917E-2619974A4545@mac.com> References: <7BCF83EB-75F1-46A6-917E-2619974A4545@mac.com> Message-ID: <5FA2ABE2-4272-4F7A-8880-74E426C04346@mac.com> Hello, is there any interest to accept change sets based on OpenJDK 7 that update the java classes in jdk/src/share/classes to use * multi-catch * string switch statements as opposed to nested if statements when comparing strings with string literals * type inference by removing duplicative type information in the constructor when using generics * indexOf(int) when indexOf(String) is used with a String literal that contains only one character, and similar small-scale improvements? The proposed change sets would pass all jtreg tests. If there is interest, what would be next steps? Regards, Stefan Reich From kurchi.subhra.hazra at oracle.com Wed Apr 25 19:32:25 2012 From: kurchi.subhra.hazra at oracle.com (kurchi.subhra.hazra at oracle.com) Date: Wed, 25 Apr 2012 19:32:25 +0000 Subject: hg: jdk8/tl/jdk: 7160242: (prefs) Preferences.remove(null) does not throw NPE [macosx] Message-ID: <20120425193243.532E647264@hg.openjdk.java.net> Changeset: 3e398b549cea Author: khazra Date: 2012-04-25 12:31 -0700 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/3e398b549cea 7160242: (prefs) Preferences.remove(null) does not throw NPE [macosx] Summary: Insert null check of argument in remove()'s implementation Reviewed-by: forax, chegar, alanb ! src/macosx/classes/java/util/prefs/MacOSXPreferences.java + test/java/util/prefs/RemoveNullKeyCheck.java From kurchi.subhra.hazra at oracle.com Thu Apr 26 00:34:01 2012 From: kurchi.subhra.hazra at oracle.com (Kurchi Hazra) Date: Wed, 25 Apr 2012 17:34:01 -0700 Subject: Code Review Request: 7118100: Inconsistency when using system and user preference on OSX Lion Message-ID: <4F9897F9.2080602@oracle.com> Hi, While syncing user preferences, a BackingStoreException is not expected, since the current user should be able to read/write such preferences to the persistent storage (unlike system preferences, where current user needs to have admin rights). This fix aims at allowing a user preference node to sync any changes to the persistent storage. Bug: http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=7118100 Webrev: http://cr.openjdk.java.net/~khazra/7118100/jdk8/webrev.00/ This webrev had been earlier code-reviewed for 7u4(but never committed) [1]. There are no additional changes required for jdk8. Thanks, Kurchi [1] http://mail.openjdk.java.net/pipermail/macosx-port-dev/2012-February/003081.html From youdwei at linux.vnet.ibm.com Thu Apr 26 01:21:36 2012 From: youdwei at linux.vnet.ibm.com (Deven You) Date: Thu, 26 Apr 2012 09:21:36 +0800 Subject: sun.management.Agent: the properties.putAll API may fail with ConcurrentModifcationException on multi-thread scenario In-Reply-To: <4F97EEDE.7050102@oracle.com> References: <4F853485.7020607@linux.vnet.ibm.com> <4F863945.7020701@oracle.com> <4F8D1CBC.5040205@linux.vnet.ibm.com> <4F8E5282.3070507@oracle.com> <4F8E5D34.8050901@linux.vnet.ibm.com> <4F94EE8B.8070101@linux.vnet.ibm.com> <4F94F70D.1060906@oracle.com> <4F94F880.2020206@oracle.com> <4F95080C.7090007@linux.vnet.ibm.com> <4F969953.9090107@oracle.com> <4F97EEDE.7050102@oracle.com> Message-ID: <4F98A320.2030803@linux.vnet.ibm.com> Hi Dmitry, Thanks for your help. I have created a CR with internal id 2236492 which hasn't be published yet. So please set this internal CR id as duplicate to 716419 as well. This is the original mail for this problem: ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- Hi core-libs-devs, I am not sure if sun.management.Agent belongs to jmx-dev mailing list, if so please anyone tell me. This issue is that the sun.management.Agent.loadManagementProperties() will invoke properties.putAll which will throw ConcurrentModifcationException if there are other threads which modify the properties concurrently. I have made a patch[1] which synchronize the sysProps so that putAll can work on multi-thread scenario. The test case is also available in [1]. Thanks a lot! [1] http://cr.openjdk.java.net/~littlee/OJDK-256/webrev.00 ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- Thanks a lot! On 04/25/2012 08:32 PM, Dmitry Samersoff wrote: > Deven, > > CR number is 7164191 . > > Could you re-send me your original e-mail with problem description and > webrev link. > > I'll put it to CR comment field. > > > -Dmitry > > > > On 2012-04-24 16:15, Dmitry Samersoff wrote: >> Deven, >> >> After close look and off-line discussion with David Holmes, >> the changes looks good for me. >> >> I'll take care of the rest. >> >> We have one more place in Agent.java executing exactly the same code >> so I'll change both of them on your behalf. >> >> -Dmitry >> >> >> On 2012-04-23 11:43, Deven You wrote: >>> Thanks David, >>> >>> So is it ok for you to contribute this patch? >>> >>> On 04/23/2012 02:36 PM, David Holmes wrote: >>>> Except of course that Properties is a Hashtable and synchronizes on >>>> 'this' for all public methods. So locking the properties object in the >>>> client code will guarantee exclusive access to it. >>>> >>>> Sorry about that. >>>> >>>> David >>>> ----- >>>> >>>> On 23/04/2012 4:30 PM, David Holmes wrote: >>>>> Deven, >>>>> >>>>> On 23/04/2012 3:54 PM, Deven You wrote: >>>>>> On 04/18/2012 02:20 PM, Deven You wrote: >>>>>>> On 04/18/2012 01:34 PM, Mandy Chung wrote: >>>>>>>> >>>>>>>> I think this could still run into CME. System Properties is not a >>>>>>>> synchronized map and the setter methods (System.setProperty or >>>>>>>> Properties.put method) doesn't synchronize on the Properties object. >>>>>>>> >>>>>>>> >>>>>>>> The setter methods I'm referring to are System.setProperty and >>>>>>>> System.getProperties().put(). >>>>>>>> >>>>>>> I have gone through the Agent.java, I think other set/put methods >>>>>>> related to properties are protected properly. >>>>>>> >>>>>>> public static void agentmain using parseString(args) which return a >>>>>>> properties which is a local var and is not possible to cause >>>>>>> concurrent problem when call config_props.putAll(arg_props). >>>>>>> >>>>>>> private static synchronized void startLocalManagementAgent() is >>>>>>> synchronized already. >>>>>>> >>>>>>> private static synchronized void startRemoteManagementAgent(String >>>>>>> args) is synchronized also. >>>>>>> >>>>>>> Could you point where the CME may ocurr? >>>>>> Is there any suggestion from the mailing list? >>>>> The problem is that System.getProperties() returns a globally >>>>> accessible >>>>> set of properties. So even if you prevent the Agent code from modifying >>>>> those properties concurrently with other use in the Agent, you have no >>>>> such guard for any other piece of code in the system which might also >>>>> modify the properties. So the race condition you were trying to fix >>>>> still exists. I don't see any way to fix this. No matter what you do >>>>> another thread can modify the system properties while you are iterating >>>>> them. Instead you need to anticipate the CME and try to recover from it >>>>> (also non-trivial). >>>>> >>>>> Cheers, >>>>> David Holmes >>> >> > -- Best Regards, Deven From Alan.Bateman at oracle.com Thu Apr 26 07:18:45 2012 From: Alan.Bateman at oracle.com (Alan Bateman) Date: Thu, 26 Apr 2012 08:18:45 +0100 Subject: Code Review Request: 7118100: Inconsistency when using system and user preference on OSX Lion In-Reply-To: <4F9897F9.2080602@oracle.com> References: <4F9897F9.2080602@oracle.com> Message-ID: <4F98F6D5.6070407@oracle.com> On 26/04/2012 01:34, Kurchi Hazra wrote: > Hi, > > While syncing user preferences, a BackingStoreException is not > expected, since > the current user should be able to read/write such preferences to the > persistent storage (unlike system preferences, where current user needs > to have admin rights). This fix aims at allowing a user preference node > to sync any changes to the persistent storage. > > Bug: http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=7118100 > > Webrev: http://cr.openjdk.java.net/~khazra/7118100/jdk8/webrev.00/ > > This webrev had been earlier code-reviewed for 7u4(but never > committed) [1]. There are no > additional changes required for jdk8. > > Thanks, > Kurchi > > [1] > http://mail.openjdk.java.net/pipermail/macosx-port-dev/2012-February/003081.html Kurchi - this looks fine to me. As per exchange on macosx-dev there is some clean-up to do in this code, including raw type warnings and we should make sure we have a bug to remember this. -Alan From Dmitry.Samersoff at oracle.com Thu Apr 26 12:11:56 2012 From: Dmitry.Samersoff at oracle.com (Dmitry Samersoff) Date: Thu, 26 Apr 2012 16:11:56 +0400 Subject: sun.management.Agent: the properties.putAll API may fail with ConcurrentModifcationException on multi-thread scenario In-Reply-To: <4F98A320.2030803@linux.vnet.ibm.com> References: <4F853485.7020607@linux.vnet.ibm.com> <4F863945.7020701@oracle.com> <4F8D1CBC.5040205@linux.vnet.ibm.com> <4F8E5282.3070507@oracle.com> <4F8E5D34.8050901@linux.vnet.ibm.com> <4F94EE8B.8070101@linux.vnet.ibm.com> <4F94F70D.1060906@oracle.com> <4F94F880.2020206@oracle.com> <4F95080C.7090007@linux.vnet.ibm.com> <4F969953.9090107@oracle.com> <4F97EEDE.7050102@oracle.com> <4F98A320.2030803@linux.vnet.ibm.com> Message-ID: <4F993B8C.1060505@oracle.com> Deven, Thank you! On 2012-04-26 05:21, Deven You wrote: > Hi Dmitry, > > Thanks for your help. I have created a CR with internal id 2236492 which > hasn't be published yet. So please set this internal CR id as duplicate > to 716419 as well. > > This is the original mail for this problem: > > > > ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- > > Hi core-libs-devs, > > I am not sure if sun.management.Agent belongs to jmx-dev mailing list, > if so please anyone tell me. > > This issue is that the sun.management.Agent.loadManagementProperties() > will invoke properties.putAll which will throw > ConcurrentModifcationException if there are other threads which modify > the properties concurrently. > > I have made a patch[1] which synchronize the sysProps so that putAll can > work on multi-thread scenario. The test case is also available in [1]. > > Thanks a lot! > > [1] http://cr.openjdk.java.net/~littlee/OJDK-256/webrev.00 > > > ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- > > > Thanks a lot! > > > > On 04/25/2012 08:32 PM, Dmitry Samersoff wrote: >> Deven, >> >> CR number is 7164191 . >> >> Could you re-send me your original e-mail with problem description and >> webrev link. >> >> I'll put it to CR comment field. >> >> >> -Dmitry >> >> >> >> On 2012-04-24 16:15, Dmitry Samersoff wrote: >>> Deven, >>> >>> After close look and off-line discussion with David Holmes, >>> the changes looks good for me. >>> >>> I'll take care of the rest. >>> >>> We have one more place in Agent.java executing exactly the same code >>> so I'll change both of them on your behalf. >>> >>> -Dmitry >>> >>> >>> On 2012-04-23 11:43, Deven You wrote: >>>> Thanks David, >>>> >>>> So is it ok for you to contribute this patch? >>>> >>>> On 04/23/2012 02:36 PM, David Holmes wrote: >>>>> Except of course that Properties is a Hashtable and synchronizes on >>>>> 'this' for all public methods. So locking the properties object in the >>>>> client code will guarantee exclusive access to it. >>>>> >>>>> Sorry about that. >>>>> >>>>> David >>>>> ----- >>>>> >>>>> On 23/04/2012 4:30 PM, David Holmes wrote: >>>>>> Deven, >>>>>> >>>>>> On 23/04/2012 3:54 PM, Deven You wrote: >>>>>>> On 04/18/2012 02:20 PM, Deven You wrote: >>>>>>>> On 04/18/2012 01:34 PM, Mandy Chung wrote: >>>>>>>>> >>>>>>>>> I think this could still run into CME. System Properties is not a >>>>>>>>> synchronized map and the setter methods (System.setProperty or >>>>>>>>> Properties.put method) doesn't synchronize on the Properties >>>>>>>>> object. >>>>>>>>> >>>>>>>>> >>>>>>>>> The setter methods I'm referring to are System.setProperty and >>>>>>>>> System.getProperties().put(). >>>>>>>>> >>>>>>>> I have gone through the Agent.java, I think other set/put methods >>>>>>>> related to properties are protected properly. >>>>>>>> >>>>>>>> public static void agentmain using parseString(args) which return a >>>>>>>> properties which is a local var and is not possible to cause >>>>>>>> concurrent problem when call config_props.putAll(arg_props). >>>>>>>> >>>>>>>> private static synchronized void startLocalManagementAgent() is >>>>>>>> synchronized already. >>>>>>>> >>>>>>>> private static synchronized void startRemoteManagementAgent(String >>>>>>>> args) is synchronized also. >>>>>>>> >>>>>>>> Could you point where the CME may ocurr? >>>>>>> Is there any suggestion from the mailing list? >>>>>> The problem is that System.getProperties() returns a globally >>>>>> accessible >>>>>> set of properties. So even if you prevent the Agent code from >>>>>> modifying >>>>>> those properties concurrently with other use in the Agent, you >>>>>> have no >>>>>> such guard for any other piece of code in the system which might also >>>>>> modify the properties. So the race condition you were trying to fix >>>>>> still exists. I don't see any way to fix this. No matter what you do >>>>>> another thread can modify the system properties while you are >>>>>> iterating >>>>>> them. Instead you need to anticipate the CME and try to recover >>>>>> from it >>>>>> (also non-trivial). >>>>>> >>>>>> Cheers, >>>>>> David Holmes >>>> >>> >> > > -- Dmitry Samersoff Java Hotspot development team, SPB04 * There will come soft rains ... From kurchi.subhra.hazra at oracle.com Thu Apr 26 17:31:20 2012 From: kurchi.subhra.hazra at oracle.com (Kurchi Hazra) Date: Thu, 26 Apr 2012 10:31:20 -0700 Subject: Code Review Request: 7118100: Inconsistency when using system and user preference on OSX Lion In-Reply-To: <4F98F6D5.6070407@oracle.com> References: <4F9897F9.2080602@oracle.com> <4F98F6D5.6070407@oracle.com> Message-ID: <4F998668.6060807@oracle.com> Thanks Alan for the thumbs up. I filed 7164636 for the cleanup. - Kurchi On 4/26/2012 12:18 AM, Alan Bateman wrote: > On 26/04/2012 01:34, Kurchi Hazra wrote: >> Hi, >> >> While syncing user preferences, a BackingStoreException is not >> expected, since >> the current user should be able to read/write such preferences to the >> persistent storage (unlike system preferences, where current user needs >> to have admin rights). This fix aims at allowing a user preference node >> to sync any changes to the persistent storage. >> >> Bug: http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=7118100 >> >> Webrev: http://cr.openjdk.java.net/~khazra/7118100/jdk8/webrev.00/ >> >> This webrev had been earlier code-reviewed for 7u4(but never >> committed) [1]. There are no >> additional changes required for jdk8. >> >> Thanks, >> Kurchi >> >> [1] >> http://mail.openjdk.java.net/pipermail/macosx-port-dev/2012-February/003081.html > Kurchi - this looks fine to me. As per exchange on macosx-dev there is > some clean-up to do in this code, including raw type warnings and we > should make sure we have a bug to remember this. > > -Alan -- -Kurchi From mandy.chung at oracle.com Thu Apr 26 18:49:51 2012 From: mandy.chung at oracle.com (Mandy Chung) Date: Thu, 26 Apr 2012 11:49:51 -0700 Subject: Review Request: 7164376 Replace use of sun.security.action.LoadLibraryAction Message-ID: <4F9998CF.9000308@oracle.com> 7164376 Replace use of sun.security.action.LoadLibraryAction with direct call of System.loadLibrary Webrev: http://cr.openjdk.java.net/~mchung/jdk8/webrevs/7164376/webrev.00/ This change is required for jdk modularization. High level summary: it replaces the use of LoadLibraryAction: FROM: java.security.AccessController.doPrivileged(new LoadLibraryAction("net")); TO: AccessController.doPrivileged( new java.security.PrivilegedAction() { public Void run() { System.loadLibrary("net"); return null; } }); It touches files in awt, security and serviceability area (cc'ed). For this type of simple change, I think 1-2 reviewers can review all files (simpler to review jdk.patch) and no need for all teams to do the reviews. System.loadLibrary and Runtime.loadLibrary loads a system library of the given library name that requires RuntimePermission("loadLibrary."+lib) permission. Many places in the JDK code loading a system native library is using the sun.security.action.LoadLibraryAction convenient class that will load the system library as a privileged action: java.security.AccessController.doPrivileged(new LoadLibraryAction("net")); The search path of native libraries are coupled with an associated class loader. For example, the application class loader uses the path specified in the "java.library.path" system property for native library lookup. The loadLibrary implementation uses the caller's class loader for finding the native library being requested. For system libraries, the class loader is null and the system library lookup is handled as a special case. When the sun.security.action.LoadLibraryAction class is used that is the caller of System.loadLibrary, the caller's class loader in this case is "null" loader and thus it always finds the native library from the system library path. In a modular world, JDK modules may be loaded by multiple different module class loader. The following code would not work if it is expected to load a native library from a module which is not the module where the sun.security.action.LoadLibraryAction lives. For example, the management module is trying to load libmanagement.so. Calling the following will fail to find libmanagement.so because the caller of System.loadLibrary is the LoadLibraryAction which is in the base module and search the library from the base module only. To prepare for jdk modularization, the use of LoadLibraryAction should be replaced with a direct call of System.loadLibrary. This patch also removes sun.security.action.LoadLibraryAction class to avoid regression. Thanks Mandy From kurchi.subhra.hazra at oracle.com Thu Apr 26 19:05:27 2012 From: kurchi.subhra.hazra at oracle.com (kurchi.subhra.hazra at oracle.com) Date: Thu, 26 Apr 2012 19:05:27 +0000 Subject: hg: jdk8/tl/jdk: 7118100: (prefs) Inconsistency when using system and user preference on OSX Lion Message-ID: <20120426190547.E66CE4728E@hg.openjdk.java.net> Changeset: 108a02a57b75 Author: khazra Date: 2012-04-26 12:04 -0700 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/108a02a57b75 7118100: (prefs) Inconsistency when using system and user preference on OSX Lion Summary: Enable user to read/write preferences to persistent storage Reviewed-by: alanb ! src/macosx/classes/java/util/prefs/MacOSXPreferences.java ! src/macosx/classes/java/util/prefs/MacOSXPreferencesFile.java From sean.mullan at oracle.com Thu Apr 26 20:59:41 2012 From: sean.mullan at oracle.com (Sean Mullan) Date: Thu, 26 Apr 2012 16:59:41 -0400 Subject: Review Request: 7164376 Replace use of sun.security.action.LoadLibraryAction In-Reply-To: <4F9998CF.9000308@oracle.com> References: <4F9998CF.9000308@oracle.com> Message-ID: <4F99B73D.1080502@oracle.com> Looks fine, just a couple of nits. src/macosx/classes/com/apple/concurrent/LibDispatchNative.java, - the closing static brace is not indented the same as the open brace. src/solaris/classes/sun/management/FileSystemImpl.java src/windows/classes/sun/management/FileSystemImpl.java - line-break coding style is different from all others; probably better to be consistent --Sean On 04/26/2012 02:49 PM, Mandy Chung wrote: > 7164376 Replace use of sun.security.action.LoadLibraryAction with > direct call of System.loadLibrary > > Webrev: > http://cr.openjdk.java.net/~mchung/jdk8/webrevs/7164376/webrev.00/ > > This change is required for jdk modularization. High level summary: > it replaces the use of LoadLibraryAction: > > FROM: java.security.AccessController.doPrivileged(new > LoadLibraryAction("net")); > > TO: AccessController.doPrivileged( new > java.security.PrivilegedAction() { public Void run() { > System.loadLibrary("net"); return null; } }); > > It touches files in awt, security and serviceability area (cc'ed). > For this type of simple change, I think 1-2 reviewers can review all > files (simpler to review jdk.patch) and no need for all teams to do > the reviews. > > System.loadLibrary and Runtime.loadLibrary loads a system library of > the given library name that requires > RuntimePermission("loadLibrary."+lib) permission. Many places in the > JDK code loading a system native library is using the > sun.security.action.LoadLibraryAction convenient class that will load > the system library as a privileged action: > java.security.AccessController.doPrivileged(new > LoadLibraryAction("net")); > > The search path of native libraries are coupled with an associated > class loader. For example, the application class loader uses the path > specified in the "java.library.path" system property for native > library lookup. The loadLibrary implementation uses the caller's > class loader for finding the native library being requested. For > system libraries, the class loader is null and the system library > lookup is handled as a special case. When the > sun.security.action.LoadLibraryAction class is used that is the > caller of System.loadLibrary, the caller's class loader in this case > is "null" loader and thus it always finds the native library from the > system library path. > > In a modular world, JDK modules may be loaded by multiple different > module class loader. The following code would not work if it is > expected to load a native library from a module which is not the > module where the sun.security.action.LoadLibraryAction lives. > > For example, the management module is trying to load > libmanagement.so. Calling the following will fail to find > libmanagement.so because the caller of System.loadLibrary is the > LoadLibraryAction which is in the base module and search the library > from the base module only. To prepare for jdk modularization, the use > of LoadLibraryAction should be replaced with a direct call of > System.loadLibrary. > > This patch also removes sun.security.action.LoadLibraryAction class > to avoid regression. > > Thanks Mandy > From mandy.chung at oracle.com Thu Apr 26 21:20:56 2012 From: mandy.chung at oracle.com (Mandy Chung) Date: Thu, 26 Apr 2012 14:20:56 -0700 Subject: Review Request: 7164376 Replace use of sun.security.action.LoadLibraryAction In-Reply-To: <4F99B73D.1080502@oracle.com> References: <4F9998CF.9000308@oracle.com> <4F99B73D.1080502@oracle.com> Message-ID: <4F99BC38.1070705@oracle.com> Thanks, Sean. I have fixed the 3 files per your comment. Mandy On 4/26/2012 1:59 PM, Sean Mullan wrote: > Looks fine, just a couple of nits. > > src/macosx/classes/com/apple/concurrent/LibDispatchNative.java, > > - the closing static brace is not indented the same as the open brace. > > src/solaris/classes/sun/management/FileSystemImpl.java > src/windows/classes/sun/management/FileSystemImpl.java > > - line-break coding style is different from all others; probably > better to be consistent > > --Sean > > On 04/26/2012 02:49 PM, Mandy Chung wrote: >> 7164376 Replace use of sun.security.action.LoadLibraryAction with >> direct call of System.loadLibrary >> >> Webrev: >> http://cr.openjdk.java.net/~mchung/jdk8/webrevs/7164376/webrev.00/ >> >> This change is required for jdk modularization. High level summary: >> it replaces the use of LoadLibraryAction: >> >> FROM: java.security.AccessController.doPrivileged(new >> LoadLibraryAction("net")); >> >> TO: AccessController.doPrivileged( new >> java.security.PrivilegedAction() { public Void run() { >> System.loadLibrary("net"); return null; } }); >> >> It touches files in awt, security and serviceability area (cc'ed). >> For this type of simple change, I think 1-2 reviewers can review all >> files (simpler to review jdk.patch) and no need for all teams to do >> the reviews. >> >> System.loadLibrary and Runtime.loadLibrary loads a system library of >> the given library name that requires >> RuntimePermission("loadLibrary."+lib) permission. Many places in the >> JDK code loading a system native library is using the >> sun.security.action.LoadLibraryAction convenient class that will load >> the system library as a privileged action: >> java.security.AccessController.doPrivileged(new >> LoadLibraryAction("net")); >> >> The search path of native libraries are coupled with an associated >> class loader. For example, the application class loader uses the path >> specified in the "java.library.path" system property for native >> library lookup. The loadLibrary implementation uses the caller's >> class loader for finding the native library being requested. For >> system libraries, the class loader is null and the system library >> lookup is handled as a special case. When the >> sun.security.action.LoadLibraryAction class is used that is the >> caller of System.loadLibrary, the caller's class loader in this case >> is "null" loader and thus it always finds the native library from the >> system library path. >> >> In a modular world, JDK modules may be loaded by multiple different >> module class loader. The following code would not work if it is >> expected to load a native library from a module which is not the >> module where the sun.security.action.LoadLibraryAction lives. >> >> For example, the management module is trying to load >> libmanagement.so. Calling the following will fail to find >> libmanagement.so because the caller of System.loadLibrary is the >> LoadLibraryAction which is in the base module and search the library >> from the base module only. To prepare for jdk modularization, the use >> of LoadLibraryAction should be replaced with a direct call of >> System.loadLibrary. >> >> This patch also removes sun.security.action.LoadLibraryAction class >> to avoid regression. >> >> Thanks Mandy >> > From philip.race at oracle.com Thu Apr 26 22:51:35 2012 From: philip.race at oracle.com (Phil Race) Date: Thu, 26 Apr 2012 15:51:35 -0700 Subject: Review Request: 7164376 Replace use of sun.security.action.LoadLibraryAction In-Reply-To: <4F99BC38.1070705@oracle.com> References: <4F9998CF.9000308@oracle.com> <4F99B73D.1080502@oracle.com> <4F99BC38.1070705@oracle.com> Message-ID: <4F99D177.9080204@oracle.com> All looks good to me. Compiler won't spot misspelled library names so I did try to check all those are still the same. -phil. On 4/26/2012 2:20 PM, Mandy Chung wrote: > Thanks, Sean. I have fixed the 3 files per your comment. > > Mandy > > On 4/26/2012 1:59 PM, Sean Mullan wrote: >> Looks fine, just a couple of nits. >> >> src/macosx/classes/com/apple/concurrent/LibDispatchNative.java, >> >> - the closing static brace is not indented the same as the open brace. >> >> src/solaris/classes/sun/management/FileSystemImpl.java >> src/windows/classes/sun/management/FileSystemImpl.java >> >> - line-break coding style is different from all others; probably >> better to be consistent >> >> --Sean >> >> On 04/26/2012 02:49 PM, Mandy Chung wrote: >>> 7164376 Replace use of sun.security.action.LoadLibraryAction with >>> direct call of System.loadLibrary >>> >>> Webrev: >>> http://cr.openjdk.java.net/~mchung/jdk8/webrevs/7164376/webrev.00/ >>> >>> This change is required for jdk modularization. High level summary: >>> it replaces the use of LoadLibraryAction: >>> >>> FROM: java.security.AccessController.doPrivileged(new >>> LoadLibraryAction("net")); >>> >>> TO: AccessController.doPrivileged( new >>> java.security.PrivilegedAction() { public Void run() { >>> System.loadLibrary("net"); return null; } }); >>> >>> It touches files in awt, security and serviceability area (cc'ed). >>> For this type of simple change, I think 1-2 reviewers can review all >>> files (simpler to review jdk.patch) and no need for all teams to do >>> the reviews. >>> >>> System.loadLibrary and Runtime.loadLibrary loads a system library of >>> the given library name that requires >>> RuntimePermission("loadLibrary."+lib) permission. Many places in the >>> JDK code loading a system native library is using the >>> sun.security.action.LoadLibraryAction convenient class that will load >>> the system library as a privileged action: >>> java.security.AccessController.doPrivileged(new >>> LoadLibraryAction("net")); >>> >>> The search path of native libraries are coupled with an associated >>> class loader. For example, the application class loader uses the path >>> specified in the "java.library.path" system property for native >>> library lookup. The loadLibrary implementation uses the caller's >>> class loader for finding the native library being requested. For >>> system libraries, the class loader is null and the system library >>> lookup is handled as a special case. When the >>> sun.security.action.LoadLibraryAction class is used that is the >>> caller of System.loadLibrary, the caller's class loader in this case >>> is "null" loader and thus it always finds the native library from the >>> system library path. >>> >>> In a modular world, JDK modules may be loaded by multiple different >>> module class loader. The following code would not work if it is >>> expected to load a native library from a module which is not the >>> module where the sun.security.action.LoadLibraryAction lives. >>> >>> For example, the management module is trying to load >>> libmanagement.so. Calling the following will fail to find >>> libmanagement.so because the caller of System.loadLibrary is the >>> LoadLibraryAction which is in the base module and search the library >>> from the base module only. To prepare for jdk modularization, the use >>> of LoadLibraryAction should be replaced with a direct call of >>> System.loadLibrary. >>> >>> This patch also removes sun.security.action.LoadLibraryAction class >>> to avoid regression. >>> >>> Thanks Mandy >>> >> From mandy.chung at oracle.com Thu Apr 26 22:57:11 2012 From: mandy.chung at oracle.com (Mandy Chung) Date: Thu, 26 Apr 2012 15:57:11 -0700 Subject: Review Request: 7164376 Replace use of sun.security.action.LoadLibraryAction In-Reply-To: <4F99D177.9080204@oracle.com> References: <4F9998CF.9000308@oracle.com> <4F99B73D.1080502@oracle.com> <4F99BC38.1070705@oracle.com> <4F99D177.9080204@oracle.com> Message-ID: <4F99D2C7.5040503@oracle.com> Thanks, Phil. FYI. I plan to use TL gate for the entire changeset. The change will show up in the awt/2D repos when this gets integrated in the next promoted build. Mandy On 4/26/2012 3:51 PM, Phil Race wrote: > All looks good to me. Compiler won't spot misspelled library names so I > did try to check all those are still the same. > > -phil. > > On 4/26/2012 2:20 PM, Mandy Chung wrote: >> Thanks, Sean. I have fixed the 3 files per your comment. >> >> Mandy >> >> On 4/26/2012 1:59 PM, Sean Mullan wrote: >>> Looks fine, just a couple of nits. >>> >>> src/macosx/classes/com/apple/concurrent/LibDispatchNative.java, >>> >>> - the closing static brace is not indented the same as the open >>> brace. >>> >>> src/solaris/classes/sun/management/FileSystemImpl.java >>> src/windows/classes/sun/management/FileSystemImpl.java >>> >>> - line-break coding style is different from all others; probably >>> better to be consistent >>> >>> --Sean >>> >>> On 04/26/2012 02:49 PM, Mandy Chung wrote: >>>> 7164376 Replace use of sun.security.action.LoadLibraryAction with >>>> direct call of System.loadLibrary >>>> >>>> Webrev: >>>> http://cr.openjdk.java.net/~mchung/jdk8/webrevs/7164376/webrev.00/ >>>> >>>> This change is required for jdk modularization. High level summary: >>>> it replaces the use of LoadLibraryAction: >>>> >>>> FROM: java.security.AccessController.doPrivileged(new >>>> LoadLibraryAction("net")); >>>> >>>> TO: AccessController.doPrivileged( new >>>> java.security.PrivilegedAction() { public Void run() { >>>> System.loadLibrary("net"); return null; } }); >>>> >>>> It touches files in awt, security and serviceability area (cc'ed). >>>> For this type of simple change, I think 1-2 reviewers can review all >>>> files (simpler to review jdk.patch) and no need for all teams to do >>>> the reviews. >>>> >>>> System.loadLibrary and Runtime.loadLibrary loads a system library of >>>> the given library name that requires >>>> RuntimePermission("loadLibrary."+lib) permission. Many places in the >>>> JDK code loading a system native library is using the >>>> sun.security.action.LoadLibraryAction convenient class that will load >>>> the system library as a privileged action: >>>> java.security.AccessController.doPrivileged(new >>>> LoadLibraryAction("net")); >>>> >>>> The search path of native libraries are coupled with an associated >>>> class loader. For example, the application class loader uses the path >>>> specified in the "java.library.path" system property for native >>>> library lookup. The loadLibrary implementation uses the caller's >>>> class loader for finding the native library being requested. For >>>> system libraries, the class loader is null and the system library >>>> lookup is handled as a special case. When the >>>> sun.security.action.LoadLibraryAction class is used that is the >>>> caller of System.loadLibrary, the caller's class loader in this case >>>> is "null" loader and thus it always finds the native library from the >>>> system library path. >>>> >>>> In a modular world, JDK modules may be loaded by multiple different >>>> module class loader. The following code would not work if it is >>>> expected to load a native library from a module which is not the >>>> module where the sun.security.action.LoadLibraryAction lives. >>>> >>>> For example, the management module is trying to load >>>> libmanagement.so. Calling the following will fail to find >>>> libmanagement.so because the caller of System.loadLibrary is the >>>> LoadLibraryAction which is in the base module and search the library >>>> from the base module only. To prepare for jdk modularization, the use >>>> of LoadLibraryAction should be replaced with a direct call of >>>> System.loadLibrary. >>>> >>>> This patch also removes sun.security.action.LoadLibraryAction class >>>> to avoid regression. >>>> >>>> Thanks Mandy >>>> >>> > From lana.steuck at oracle.com Thu Apr 26 23:29:54 2012 From: lana.steuck at oracle.com (lana.steuck at oracle.com) Date: Thu, 26 Apr 2012 23:29:54 +0000 Subject: hg: jdk8/tl: 4 new changesets Message-ID: <20120426232954.9787347296@hg.openjdk.java.net> Changeset: e1830598f0b7 Author: ohair Date: 2012-04-10 08:18 -0700 URL: http://hg.openjdk.java.net/jdk8/tl/rev/e1830598f0b7 7074397: Build infrastructure changes (makefile re-write) Summary: New makefiles transition, old and new living side by side for now. Reviewed-by: ohair, jjg, dholmes, ohrstrom, erikj, ihse, tgranat, ykantser Contributed-by: ohrstrom , erikj , ihse , tgranat , ykantser + common/autoconf/Makefile.in + common/autoconf/autogen.sh + common/autoconf/build-aux/config.guess + common/autoconf/build-aux/config.sub + common/autoconf/build-aux/install.sh + common/autoconf/build-aux/pkg.m4 + common/autoconf/builddeps.conf.example + common/autoconf/builddeps.conf.nfs.example + common/autoconf/builddeps.m4 + common/autoconf/closed.version.numbers + common/autoconf/config.h.in + common/autoconf/configure + common/autoconf/configure.ac + common/autoconf/cores.m4 + common/autoconf/help.m4 + common/autoconf/platform.m4 + common/autoconf/spec.gmk.in + common/autoconf/version.numbers + common/bin/compareimage.sh + common/bin/diffexec.sh + common/bin/diffjarzip.sh + common/bin/difflib.sh + common/bin/difftext.sh + common/bin/exception_list_linux + common/bin/extractvcvars.sh + common/bin/hide_important_warnings_from_javac.sh + common/bin/logger.sh + common/makefiles/IdlCompilation.gmk + common/makefiles/JavaCompilation.gmk + common/makefiles/MakeBase.gmk + common/makefiles/Makefile + common/makefiles/NativeCompilation.gmk + common/makefiles/RMICompile.gmk + common/makefiles/compress.post + common/makefiles/compress.pre + common/makefiles/uncompress.sed + common/src/uncygdrive.c Changeset: 894a478d2c48 Author: katleman Date: 2012-04-11 14:07 -0700 URL: http://hg.openjdk.java.net/jdk8/tl/rev/894a478d2c48 Merge Changeset: 5285317ebb4e Author: katleman Date: 2012-04-12 09:34 -0700 URL: http://hg.openjdk.java.net/jdk8/tl/rev/5285317ebb4e Added tag jdk8-b34 for changeset 894a478d2c48 ! .hgtags Changeset: 6a6ba0a07f33 Author: katleman Date: 2012-04-19 12:18 -0700 URL: http://hg.openjdk.java.net/jdk8/tl/rev/6a6ba0a07f33 Added tag jdk8-b35 for changeset 5285317ebb4e ! .hgtags From lana.steuck at oracle.com Thu Apr 26 23:29:57 2012 From: lana.steuck at oracle.com (lana.steuck at oracle.com) Date: Thu, 26 Apr 2012 23:29:57 +0000 Subject: hg: jdk8/tl/corba: 5 new changesets Message-ID: <20120426233005.B513647297@hg.openjdk.java.net> Changeset: a1b6b8f33d86 Author: ohair Date: 2012-04-10 08:14 -0700 URL: http://hg.openjdk.java.net/jdk8/tl/corba/rev/a1b6b8f33d86 7074397: Build infrastructure changes (makefile re-write) Summary: New makefiles transition, old and new living side by side for now. Reviewed-by: ohair, jjg, dholmes, ohrstrom, erikj, ihse, tgranat, ykantser Contributed-by: ohrstrom , erikj , ihse , tgranat , ykantser + makefiles/Makefile Changeset: e24c5cc8b0f7 Author: katleman Date: 2012-04-11 14:07 -0700 URL: http://hg.openjdk.java.net/jdk8/tl/corba/rev/e24c5cc8b0f7 Merge Changeset: e3d735914edd Author: katleman Date: 2012-04-12 09:34 -0700 URL: http://hg.openjdk.java.net/jdk8/tl/corba/rev/e3d735914edd Added tag jdk8-b34 for changeset e24c5cc8b0f7 ! .hgtags Changeset: a5a61f259961 Author: katleman Date: 2012-04-19 12:18 -0700 URL: http://hg.openjdk.java.net/jdk8/tl/corba/rev/a5a61f259961 Added tag jdk8-b35 for changeset e3d735914edd ! .hgtags Changeset: df0c7369a86b Author: lana Date: 2012-04-26 14:14 -0700 URL: http://hg.openjdk.java.net/jdk8/tl/corba/rev/df0c7369a86b Merge From lana.steuck at oracle.com Thu Apr 26 23:30:05 2012 From: lana.steuck at oracle.com (lana.steuck at oracle.com) Date: Thu, 26 Apr 2012 23:30:05 +0000 Subject: hg: jdk8/tl/jaxws: 4 new changesets Message-ID: <20120426233022.0A8AD47298@hg.openjdk.java.net> Changeset: a34aee728ac0 Author: ohair Date: 2012-04-10 08:14 -0700 URL: http://hg.openjdk.java.net/jdk8/tl/jaxws/rev/a34aee728ac0 7074397: Build infrastructure changes (makefile re-write) Summary: New makefiles transition, old and new living side by side for now. Reviewed-by: ohair, jjg, dholmes, ohrstrom, erikj, ihse, tgranat, ykantser Contributed-by: ohrstrom , erikj , ihse , tgranat , ykantser + makefiles/Makefile Changeset: f1d020a49c8c Author: katleman Date: 2012-04-11 14:08 -0700 URL: http://hg.openjdk.java.net/jdk8/tl/jaxws/rev/f1d020a49c8c Merge Changeset: e8afc16522e1 Author: katleman Date: 2012-04-12 09:35 -0700 URL: http://hg.openjdk.java.net/jdk8/tl/jaxws/rev/e8afc16522e1 Added tag jdk8-b34 for changeset f1d020a49c8c ! .hgtags Changeset: 89b36c658e39 Author: katleman Date: 2012-04-19 12:18 -0700 URL: http://hg.openjdk.java.net/jdk8/tl/jaxws/rev/89b36c658e39 Added tag jdk8-b35 for changeset e8afc16522e1 ! .hgtags From lana.steuck at oracle.com Thu Apr 26 23:30:10 2012 From: lana.steuck at oracle.com (lana.steuck at oracle.com) Date: Thu, 26 Apr 2012 23:30:10 +0000 Subject: hg: jdk8/tl/langtools: 6 new changesets Message-ID: <20120426233029.7171F47299@hg.openjdk.java.net> Changeset: 807ca8ffbeb4 Author: ohair Date: 2012-04-10 08:15 -0700 URL: http://hg.openjdk.java.net/jdk8/tl/langtools/rev/807ca8ffbeb4 7074397: Build infrastructure changes (makefile re-write) Summary: New makefiles transition, old and new living side by side for now. Reviewed-by: ohair, jjg, dholmes, ohrstrom, erikj, ihse, tgranat, ykantser Contributed-by: ohrstrom , erikj , ihse , tgranat , ykantser + makefiles/Makefile Changeset: 6b105afbb77c Author: katleman Date: 2012-04-11 14:10 -0700 URL: http://hg.openjdk.java.net/jdk8/tl/langtools/rev/6b105afbb77c Merge Changeset: defd666a7863 Author: katleman Date: 2012-04-12 09:35 -0700 URL: http://hg.openjdk.java.net/jdk8/tl/langtools/rev/defd666a7863 Added tag jdk8-b34 for changeset 6b105afbb77c ! .hgtags Changeset: 068207a80397 Author: katleman Date: 2012-04-19 12:19 -0700 URL: http://hg.openjdk.java.net/jdk8/tl/langtools/rev/068207a80397 Added tag jdk8-b35 for changeset defd666a7863 ! .hgtags Changeset: d023d5c3fbd2 Author: lana Date: 2012-04-18 10:22 -0700 URL: http://hg.openjdk.java.net/jdk8/tl/langtools/rev/d023d5c3fbd2 Merge - test/tools/javac/diags/examples/InferredDoNotConformToBounds.java Changeset: 94bbaa67686f Author: lana Date: 2012-04-23 16:59 -0700 URL: http://hg.openjdk.java.net/jdk8/tl/langtools/rev/94bbaa67686f Merge - test/tools/javac/diags/examples/InferredDoNotConformToBounds.java From lana.steuck at oracle.com Thu Apr 26 23:30:56 2012 From: lana.steuck at oracle.com (lana.steuck at oracle.com) Date: Thu, 26 Apr 2012 23:30:56 +0000 Subject: hg: jdk8/tl/jaxp: 6 new changesets Message-ID: <20120426233112.3B7824729A@hg.openjdk.java.net> Changeset: fd7f45dd5fca Author: ohair Date: 2012-04-10 08:13 -0700 URL: http://hg.openjdk.java.net/jdk8/tl/jaxp/rev/fd7f45dd5fca 7074397: Build infrastructure changes (makefile re-write) Summary: New makefiles transition, old and new living side by side for now. Reviewed-by: ohair, jjg, dholmes, ohrstrom, erikj, ihse, tgranat, ykantser Contributed-by: ohrstrom , erikj , ihse , tgranat , ykantser + makefiles/Makefile Changeset: 8b91a897a044 Author: katleman Date: 2012-04-11 14:08 -0700 URL: http://hg.openjdk.java.net/jdk8/tl/jaxp/rev/8b91a897a044 Merge Changeset: e187f3ede649 Author: katleman Date: 2012-04-12 09:35 -0700 URL: http://hg.openjdk.java.net/jdk8/tl/jaxp/rev/e187f3ede649 Added tag jdk8-b34 for changeset 8b91a897a044 ! .hgtags Changeset: d14f5247d3af Author: katleman Date: 2012-04-19 12:18 -0700 URL: http://hg.openjdk.java.net/jdk8/tl/jaxp/rev/d14f5247d3af Added tag jdk8-b35 for changeset e187f3ede649 ! .hgtags Changeset: edd2cfb93655 Author: lana Date: 2012-04-18 10:20 -0700 URL: http://hg.openjdk.java.net/jdk8/tl/jaxp/rev/edd2cfb93655 Merge - src/share/classes/com/sun/java_cup/internal/runtime/Scanner.java - src/share/classes/com/sun/java_cup/internal/runtime/Symbol.java - src/share/classes/com/sun/java_cup/internal/runtime/lr_parser.java - src/share/classes/com/sun/java_cup/internal/runtime/virtual_parse_stack.java - src/share/classes/com/sun/org/apache/bcel/internal/Constants.java - src/share/classes/com/sun/org/apache/bcel/internal/ExceptionConstants.java - src/share/classes/com/sun/org/apache/bcel/internal/Repository.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/AccessFlags.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/Attribute.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/AttributeReader.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/ClassFormatException.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/ClassParser.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/Code.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/CodeException.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/Constant.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/ConstantCP.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/ConstantClass.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/ConstantDouble.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/ConstantFieldref.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/ConstantFloat.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/ConstantInteger.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/ConstantInterfaceMethodref.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/ConstantLong.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/ConstantMethodref.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/ConstantNameAndType.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/ConstantObject.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/ConstantPool.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/ConstantString.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/ConstantUtf8.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/ConstantValue.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/Deprecated.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/DescendingVisitor.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/EmptyVisitor.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/ExceptionTable.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/Field.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/FieldOrMethod.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/InnerClass.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/InnerClasses.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/JavaClass.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/LineNumber.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/LineNumberTable.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/LocalVariable.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/LocalVariableTable.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/Method.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/Node.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/PMGClass.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/Signature.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/SourceFile.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/StackMap.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/StackMapEntry.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/StackMapType.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/Synthetic.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/Unknown.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/Utility.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/Visitor.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/package.html - src/share/classes/com/sun/org/apache/bcel/internal/generic/AALOAD.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/AASTORE.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/ACONST_NULL.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/ALOAD.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/ANEWARRAY.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/ARETURN.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/ARRAYLENGTH.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/ASTORE.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/ATHROW.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/AllocationInstruction.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/ArithmeticInstruction.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/ArrayInstruction.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/ArrayType.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/BALOAD.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/BASTORE.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/BIPUSH.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/BREAKPOINT.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/BasicType.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/BranchHandle.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/BranchInstruction.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/CALOAD.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/CASTORE.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/CHECKCAST.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/CPInstruction.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/ClassGen.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/ClassGenException.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/ClassObserver.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/CodeExceptionGen.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/CompoundInstruction.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/ConstantPoolGen.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/ConstantPushInstruction.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/ConversionInstruction.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/D2F.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/D2I.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/D2L.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/DADD.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/DALOAD.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/DASTORE.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/DCMPG.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/DCMPL.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/DCONST.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/DDIV.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/DLOAD.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/DMUL.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/DNEG.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/DREM.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/DRETURN.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/DSTORE.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/DSUB.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/DUP.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/DUP2.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/DUP2_X1.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/DUP2_X2.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/DUP_X1.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/DUP_X2.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/EmptyVisitor.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/ExceptionThrower.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/F2D.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/F2I.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/F2L.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/FADD.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/FALOAD.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/FASTORE.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/FCMPG.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/FCMPL.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/FCONST.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/FDIV.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/FLOAD.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/FMUL.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/FNEG.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/FREM.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/FRETURN.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/FSTORE.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/FSUB.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/FieldGen.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/FieldGenOrMethodGen.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/FieldInstruction.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/FieldObserver.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/FieldOrMethod.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/GETFIELD.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/GETSTATIC.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/GOTO.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/GOTO_W.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/GotoInstruction.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/I2B.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/I2C.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/I2D.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/I2F.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/I2L.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/I2S.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/IADD.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/IALOAD.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/IAND.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/IASTORE.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/ICONST.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/IDIV.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/IFEQ.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/IFGE.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/IFGT.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/IFLE.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/IFLT.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/IFNE.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/IFNONNULL.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/IFNULL.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/IF_ACMPEQ.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/IF_ACMPNE.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/IF_ICMPEQ.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/IF_ICMPGE.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/IF_ICMPGT.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/IF_ICMPLE.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/IF_ICMPLT.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/IF_ICMPNE.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/IINC.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/ILOAD.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/IMPDEP1.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/IMPDEP2.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/IMUL.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/INEG.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/INSTANCEOF.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/INVOKEINTERFACE.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/INVOKESPECIAL.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/INVOKESTATIC.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/INVOKEVIRTUAL.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/IOR.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/IREM.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/IRETURN.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/ISHL.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/ISHR.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/ISTORE.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/ISUB.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/IUSHR.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/IXOR.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/IfInstruction.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/IndexedInstruction.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/Instruction.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/InstructionComparator.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/InstructionConstants.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/InstructionFactory.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/InstructionHandle.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/InstructionList.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/InstructionListObserver.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/InstructionTargeter.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/InvokeInstruction.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/JSR.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/JSR_W.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/JsrInstruction.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/L2D.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/L2F.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/L2I.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/LADD.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/LALOAD.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/LAND.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/LASTORE.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/LCMP.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/LCONST.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/LDC.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/LDC2_W.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/LDC_W.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/LDIV.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/LLOAD.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/LMUL.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/LNEG.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/LOOKUPSWITCH.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/LOR.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/LREM.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/LRETURN.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/LSHL.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/LSHR.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/LSTORE.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/LSUB.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/LUSHR.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/LXOR.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/LineNumberGen.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/LoadClass.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/LoadInstruction.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/LocalVariableGen.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/LocalVariableInstruction.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/MONITORENTER.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/MONITOREXIT.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/MULTIANEWARRAY.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/MethodGen.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/MethodObserver.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/NEW.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/NEWARRAY.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/NOP.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/NamedAndTyped.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/ObjectType.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/POP.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/POP2.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/PUSH.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/PUTFIELD.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/PUTSTATIC.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/PopInstruction.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/PushInstruction.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/RET.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/RETURN.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/ReferenceType.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/ReturnInstruction.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/ReturnaddressType.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/SALOAD.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/SASTORE.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/SIPUSH.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/SWAP.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/SWITCH.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/Select.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/StackConsumer.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/StackInstruction.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/StackProducer.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/StoreInstruction.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/TABLESWITCH.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/TargetLostException.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/Type.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/TypedInstruction.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/UnconditionalBranch.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/VariableLengthInstruction.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/Visitor.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/package.html - src/share/classes/com/sun/org/apache/bcel/internal/package.html - src/share/classes/com/sun/org/apache/bcel/internal/util/AttributeHTML.java - src/share/classes/com/sun/org/apache/bcel/internal/util/BCELFactory.java - src/share/classes/com/sun/org/apache/bcel/internal/util/BCELifier.java - src/share/classes/com/sun/org/apache/bcel/internal/util/ByteSequence.java - src/share/classes/com/sun/org/apache/bcel/internal/util/Class2HTML.java - src/share/classes/com/sun/org/apache/bcel/internal/util/ClassLoader.java - src/share/classes/com/sun/org/apache/bcel/internal/util/ClassLoaderRepository.java - src/share/classes/com/sun/org/apache/bcel/internal/util/ClassPath.java - src/share/classes/com/sun/org/apache/bcel/internal/util/ClassQueue.java - src/share/classes/com/sun/org/apache/bcel/internal/util/ClassSet.java - src/share/classes/com/sun/org/apache/bcel/internal/util/ClassStack.java - src/share/classes/com/sun/org/apache/bcel/internal/util/ClassVector.java - src/share/classes/com/sun/org/apache/bcel/internal/util/CodeHTML.java - src/share/classes/com/sun/org/apache/bcel/internal/util/ConstantHTML.java - src/share/classes/com/sun/org/apache/bcel/internal/util/InstructionFinder.java - src/share/classes/com/sun/org/apache/bcel/internal/util/JavaWrapper.java - src/share/classes/com/sun/org/apache/bcel/internal/util/MethodHTML.java - src/share/classes/com/sun/org/apache/bcel/internal/util/Repository.java - src/share/classes/com/sun/org/apache/bcel/internal/util/SyntheticRepository.java - src/share/classes/com/sun/org/apache/bcel/internal/util/package.html - src/share/classes/com/sun/org/apache/regexp/internal/CharacterArrayCharacterIterator.java - src/share/classes/com/sun/org/apache/regexp/internal/CharacterIterator.java - src/share/classes/com/sun/org/apache/regexp/internal/RE.java - src/share/classes/com/sun/org/apache/regexp/internal/RECompiler.java - src/share/classes/com/sun/org/apache/regexp/internal/REDebugCompiler.java - src/share/classes/com/sun/org/apache/regexp/internal/REProgram.java - src/share/classes/com/sun/org/apache/regexp/internal/RESyntaxException.java - src/share/classes/com/sun/org/apache/regexp/internal/RETest.java - src/share/classes/com/sun/org/apache/regexp/internal/REUtil.java - src/share/classes/com/sun/org/apache/regexp/internal/ReaderCharacterIterator.java - src/share/classes/com/sun/org/apache/regexp/internal/StreamCharacterIterator.java - src/share/classes/com/sun/org/apache/regexp/internal/StringCharacterIterator.java - src/share/classes/com/sun/org/apache/regexp/internal/recompile.java - src/share/classes/com/sun/org/apache/xalan/META-INF/services/javax.xml.transform.TransformerFactory - src/share/classes/com/sun/org/apache/xalan/META-INF/services/javax.xml.xpath.XPathFactory - src/share/classes/com/sun/org/apache/xalan/META-INF/services/org.apache.xml.dtm.DTMManager - src/share/classes/com/sun/org/apache/xalan/internal/Version.java - src/share/classes/com/sun/org/apache/xalan/internal/extensions/ExpressionContext.java - src/share/classes/com/sun/org/apache/xalan/internal/extensions/package.html - src/share/classes/com/sun/org/apache/xalan/internal/lib/ExsltBase.java - src/share/classes/com/sun/org/apache/xalan/internal/lib/ExsltCommon.java - src/share/classes/com/sun/org/apache/xalan/internal/lib/ExsltDatetime.java - src/share/classes/com/sun/org/apache/xalan/internal/lib/ExsltDynamic.java - src/share/classes/com/sun/org/apache/xalan/internal/lib/ExsltMath.java - src/share/classes/com/sun/org/apache/xalan/internal/lib/ExsltSets.java - src/share/classes/com/sun/org/apache/xalan/internal/lib/ExsltStrings.java - src/share/classes/com/sun/org/apache/xalan/internal/lib/Extensions.java - src/share/classes/com/sun/org/apache/xalan/internal/lib/NodeInfo.java - src/share/classes/com/sun/org/apache/xalan/internal/lib/ObjectFactory.java - src/share/classes/com/sun/org/apache/xalan/internal/lib/SecuritySupport.java - src/share/classes/com/sun/org/apache/xalan/internal/lib/SecuritySupport12.java - src/share/classes/com/sun/org/apache/xalan/internal/lib/package.html - src/share/classes/com/sun/org/apache/xalan/internal/res/XSLMessages.java - src/share/classes/com/sun/org/apache/xalan/internal/res/XSLTErrorResources.java - src/share/classes/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_de.java - src/share/classes/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_en.java - src/share/classes/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_es.java - src/share/classes/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_fr.java - src/share/classes/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_it.java - src/share/classes/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_ja.java - src/share/classes/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_ko.java - src/share/classes/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_pt_BR.java - src/share/classes/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_sv.java - src/share/classes/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_zh_CN.java - src/share/classes/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_zh_TW.java - src/share/classes/com/sun/org/apache/xalan/internal/res/XSLTInfo.properties - src/share/classes/com/sun/org/apache/xalan/internal/res/package.html - src/share/classes/com/sun/org/apache/xalan/internal/templates/Constants.java - src/share/classes/com/sun/org/apache/xalan/internal/templates/package.html - src/share/classes/com/sun/org/apache/xalan/internal/xslt/EnvironmentCheck.java - src/share/classes/com/sun/org/apache/xalan/internal/xslt/ObjectFactory.java - src/share/classes/com/sun/org/apache/xalan/internal/xslt/Process.java - src/share/classes/com/sun/org/apache/xalan/internal/xslt/SecuritySupport.java - src/share/classes/com/sun/org/apache/xalan/internal/xslt/SecuritySupport12.java - src/share/classes/com/sun/org/apache/xalan/internal/xslt/package.html - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/CollatorFactory.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/DOM.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/DOMCache.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/DOMEnhancedForDTM.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/NodeIterator.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/ProcessorVersion.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/StripFilter.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/Translet.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/TransletException.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/cmdline/Compile.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/cmdline/ObjectFactory.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/cmdline/SecuritySupport.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/cmdline/SecuritySupport12.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/cmdline/Transform.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/cmdline/getopt/GetOpt.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/cmdline/getopt/GetOptsException.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/cmdline/getopt/IllegalArgumentException.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/cmdline/getopt/MissingOptArgException.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/AbsoluteLocationPath.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/AbsolutePathPattern.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/AlternativePattern.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/AncestorPattern.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/ApplyImports.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/ApplyTemplates.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/ArgumentList.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Attribute.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/AttributeSet.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/AttributeValue.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/AttributeValueTemplate.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/BinOpExpr.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/BooleanCall.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/BooleanExpr.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/CallTemplate.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/CastCall.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/CastExpr.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/CeilingCall.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Choose.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Closure.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Comment.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/CompilerException.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/ConcatCall.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Constants.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/ContainsCall.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Copy.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/CopyOf.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/CurrentCall.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/DecimalFormatting.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/DocumentCall.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/ElementAvailableCall.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/EqualityExpr.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Expression.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Fallback.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/FilterExpr.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/FilterParentPath.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/FilteredAbsoluteLocationPath.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/FloorCall.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/FlowList.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/ForEach.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/FormatNumberCall.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/FunctionAvailableCall.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/FunctionCall.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/GenerateIdCall.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/IdKeyPattern.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/IdPattern.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/If.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/IllegalCharException.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Import.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Include.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Instruction.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/IntExpr.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Key.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/KeyCall.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/KeyPattern.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/LangCall.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/LastCall.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/LiteralAttribute.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/LiteralElement.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/LiteralExpr.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/LocalNameCall.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/LocationPathPattern.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/LogicalExpr.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Makefile.inc - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Message.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Mode.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/NameBase.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/NameCall.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/NamespaceAlias.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/NamespaceUriCall.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/NodeTest.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/NotCall.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Number.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/NumberCall.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/ObjectFactory.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Otherwise.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Output.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Param.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/ParameterRef.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/ParentLocationPath.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/ParentPattern.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Parser.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Pattern.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/PositionCall.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Predicate.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/ProcessingInstruction.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/ProcessingInstructionPattern.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/QName.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/RealExpr.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/RelationalExpr.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/RelativeLocationPath.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/RelativePathPattern.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/RoundCall.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/SecuritySupport.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/SecuritySupport12.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/SimpleAttributeValue.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Sort.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/SourceLoader.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/StartsWithCall.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Step.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/StepPattern.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/StringCall.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/StringLengthCall.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Stylesheet.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/SymbolTable.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/SyntaxTreeNode.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Template.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/TestSeq.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Text.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/TopLevelElement.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/TransletOutput.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/UnaryOpExpr.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/UnionPathExpr.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/UnparsedEntityUriCall.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/UnresolvedRef.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/UnsupportedElement.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/UseAttributeSets.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/ValueOf.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Variable.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/VariableBase.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/VariableRef.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/VariableRefBase.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/When.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Whitespace.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/WithParam.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/XPathLexer.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/XPathParser.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/XSLTC.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/XslAttribute.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/XslElement.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/sym.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/AttributeSetMethodGenerator.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/BooleanType.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ClassGenerator.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/CompareGenerator.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_ca.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_cs.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_de.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_es.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_fr.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_it.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_ja.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_ko.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_pt_BR.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_sk.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_sv.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_zh_CN.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_zh_TW.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMsg.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/FilterGenerator.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/IntType.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/MatchGenerator.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/MethodGenerator.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/MethodType.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/MultiHashtable.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/NamedMethodGenerator.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/NodeCounterGenerator.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/NodeSetType.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/NodeSortRecordFactGenerator.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/NodeSortRecordGenerator.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/NodeType.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/NumberType.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ObjectFactory.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ObjectType.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/RealType.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ReferenceType.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ResultTreeType.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/RtMethodGenerator.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/SecuritySupport.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/SecuritySupport12.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/SlotAllocator.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/StringStack.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/StringType.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/TestGenerator.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/Type.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/TypeCheckError.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/Util.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/VoidType.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/xpath.cup - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/xpath.lex - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/AbsoluteIterator.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/AdaptiveResultTreeImpl.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/AnyNodeCounter.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/BitArray.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/CachedNodeListIterator.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/ClonedNodeListIterator.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/CollatorFactoryBase.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/CurrentNodeListFilter.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/CurrentNodeListIterator.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/DOMAdapter.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/DOMBuilder.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/DOMWSFilter.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/DocumentCache.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/DupFilterIterator.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/EmptyFilter.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/ExtendedSAX.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/Filter.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/FilterIterator.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/FilteredStepIterator.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/ForwardPositionIterator.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/KeyIndex.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/LoadDocument.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/MatchingIterator.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/MultiDOM.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/MultiValuedNodeHeapIterator.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/MultipleNodeCounter.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/NodeCounter.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/NodeIteratorBase.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/NodeSortRecord.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/NodeSortRecordFactory.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/NthIterator.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/ObjectFactory.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/SAXImpl.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/SecuritySupport.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/SecuritySupport12.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/SimpleResultTreeImpl.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/SingleNodeCounter.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/SingletonIterator.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/SortSettings.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/SortingIterator.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/StepIterator.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/StripWhitespaceFilter.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/UnionIterator.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/XSLTCDTMManager.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/javax.xml.transform.TransformerFactory - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/AbstractTranslet.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/Attributes.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/BasisLibrary.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/Constants.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/ErrorMessages.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/ErrorMessages_ca.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/ErrorMessages_cs.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/ErrorMessages_de.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/ErrorMessages_es.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/ErrorMessages_fr.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/ErrorMessages_it.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/ErrorMessages_ja.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/ErrorMessages_ko.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/ErrorMessages_pt_BR.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/ErrorMessages_sk.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/ErrorMessages_sv.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/ErrorMessages_zh_CN.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/ErrorMessages_zh_TW.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/Hashtable.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/MessageHandler.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/Node.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/ObjectFactory.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/Operators.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/Parameter.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/SecuritySupport.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/SecuritySupport12.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/StringValueHandler.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/output/OutputBuffer.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/output/StringOutputBuffer.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/output/TransletOutputHandlerFactory.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/output/WriterOutputBuffer.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/trax/DOM2SAX.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/trax/DOM2TO.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/trax/ObjectFactory.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/trax/OutputSettings.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/trax/SAX2DOM.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/trax/SAX2StAXBaseWriter.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/trax/SAX2StAXEventWriter.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/trax/SAX2StAXStreamWriter.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/trax/SecuritySupport.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/trax/SecuritySupport12.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/trax/SmartTransformerFactoryImpl.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/trax/StAXEvent2SAX.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/trax/StAXStream2SAX.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/trax/TemplatesHandlerImpl.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/trax/TemplatesImpl.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/trax/TrAXFilter.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/trax/TransformerFactoryImpl.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/trax/TransformerHandlerImpl.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/trax/TransformerImpl.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/trax/Util.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/trax/XSLTCSource.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/util/IntegerArray.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/AttrImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/AttrNSImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/AttributeMap.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/CDATASectionImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/CharacterDataImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/ChildNode.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/CommentImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/CoreDOMImplementationImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/CoreDocumentImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/DOMConfigurationImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/DOMErrorImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/DOMImplementationImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/DOMImplementationListImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/DOMImplementationSourceImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/DOMInputImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/DOMLocatorImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/DOMMessageFormatter.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/DOMNormalizer.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/DOMOutputImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/DOMStringListImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/DOMXSImplementationSourceImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/DeepNodeListImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/DeferredAttrImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/DeferredAttrNSImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/DeferredCDATASectionImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/DeferredCommentImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/DeferredDOMImplementationImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/DeferredDocumentImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/DeferredDocumentTypeImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/DeferredElementDefinitionImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/DeferredElementImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/DeferredElementNSImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/DeferredEntityImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/DeferredEntityReferenceImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/DeferredNode.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/DeferredNotationImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/DeferredProcessingInstructionImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/DeferredTextImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/DocumentFragmentImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/DocumentImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/DocumentTypeImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/ElementDefinitionImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/ElementImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/ElementNSImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/EntityImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/EntityReferenceImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/LCount.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/NamedNodeMapImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/NodeImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/NodeIteratorImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/NodeListCache.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/NotationImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/ObjectFactory.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/PSVIAttrNSImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/PSVIDOMImplementationImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/PSVIDocumentImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/PSVIElementNSImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/ParentNode.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/ProcessingInstructionImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/RangeExceptionImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/RangeImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/SecuritySupport.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/TextImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/TreeWalkerImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/events/EventImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/events/MutationEventImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/org.apache.xerces.dom.DOMImplementationSourceImpl - src/share/classes/com/sun/org/apache/xerces/internal/dom/org.w3c.dom.DOMImplementationSourceList - src/share/classes/com/sun/org/apache/xerces/internal/impl/Constants.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/ExternalSubsetResolver.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/PropertyManager.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/RevalidationHandler.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/Version.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/XML11DTDScannerImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/XML11DocumentScannerImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/XML11EntityScanner.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/XML11NSDocumentScannerImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/XML11NamespaceBinder.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/XMLDTDScannerImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/XMLDocumentFragmentScannerImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/XMLDocumentScannerImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/XMLEntityDescription.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/XMLEntityHandler.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/XMLEntityManager.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/XMLEntityScanner.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/XMLErrorReporter.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/XMLNSDocumentScannerImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/XMLNamespaceBinder.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/XMLScanner.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/XMLStreamFilterImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/XMLStreamReaderImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/XMLVersionDetector.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/BalancedDTDGrammar.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/DTDGrammar.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/DTDGrammarBucket.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/XML11DTDProcessor.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/XML11DTDValidator.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/XML11NSDTDValidator.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/XMLAttributeDecl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/XMLContentSpec.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/XMLDTDDescription.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/XMLDTDLoader.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/XMLDTDProcessor.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/XMLDTDValidator.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/XMLDTDValidatorFilter.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/XMLElementDecl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/XMLEntityDecl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/XMLNSDTDValidator.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/XMLNotationDecl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/XMLSimpleType.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/models/CMAny.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/models/CMBinOp.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/models/CMLeaf.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/models/CMNode.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/models/CMStateSet.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/models/CMUniOp.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/models/ContentModelValidator.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/models/DFAContentModel.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/models/MixedContentModel.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/models/SimpleContentModel.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/DTDDVFactory.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/DVFactoryException.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/DatatypeException.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/DatatypeValidator.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/InvalidDatatypeFacetException.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/InvalidDatatypeValueException.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/ObjectFactory.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/SchemaDVFactory.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/SecuritySupport.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/ValidatedInfo.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/ValidationContext.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/XSFacets.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/XSSimpleType.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/dtd/DTDDVFactoryImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/dtd/ENTITYDatatypeValidator.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/dtd/IDDatatypeValidator.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/dtd/IDREFDatatypeValidator.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/dtd/ListDatatypeValidator.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/dtd/NMTOKENDatatypeValidator.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/dtd/NOTATIONDatatypeValidator.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/dtd/StringDatatypeValidator.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/dtd/XML11DTDDVFactoryImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/dtd/XML11IDDatatypeValidator.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/dtd/XML11IDREFDatatypeValidator.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/dtd/XML11NMTOKENDatatypeValidator.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/util/Base64.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/util/ByteListImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/util/HexBin.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/AbstractDateTimeDV.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/AnyAtomicDV.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/AnySimpleDV.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/AnyURIDV.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/Base64BinaryDV.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/BaseDVFactory.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/BaseSchemaDVFactory.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/BooleanDV.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/DateDV.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/DateTimeDV.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/DayDV.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/DayTimeDurationDV.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/DecimalDV.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/DoubleDV.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/DurationDV.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/EntityDV.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/ExtendedSchemaDVFactoryImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/FloatDV.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/FullDVFactory.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/HexBinaryDV.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/IDDV.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/IDREFDV.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/IntegerDV.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/ListDV.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/MonthDV.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/MonthDayDV.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/PrecisionDecimalDV.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/QNameDV.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/SchemaDVFactoryImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/SchemaDateTimeException.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/StringDV.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/TimeDV.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/TypeValidator.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/UnionDV.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/XSSimpleTypeDecl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/XSSimpleTypeDelegate.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/YearDV.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/YearMonthDV.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/YearMonthDurationDV.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/io/ASCIIReader.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/io/MalformedByteSequenceException.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/io/UCSReader.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/io/UTF8Reader.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/DOMMessages.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/DOMMessages_de.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/DOMMessages_es.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/DOMMessages_fr.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/DOMMessages_it.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/DOMMessages_ja.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/DOMMessages_ko.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/DOMMessages_pt_BR.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/DOMMessages_sv.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/DOMMessages_zh_CN.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/DOMMessages_zh_TW.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/DatatypeMessages.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/DatatypeMessages_de.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/DatatypeMessages_es.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/DatatypeMessages_fr.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/DatatypeMessages_it.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/DatatypeMessages_ja.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/DatatypeMessages_ko.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/DatatypeMessages_pt_BR.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/DatatypeMessages_sv.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/DatatypeMessages_zh_CN.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/DatatypeMessages_zh_TW.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/JAXPValidationMessages.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/JAXPValidationMessages_de.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/JAXPValidationMessages_es.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/JAXPValidationMessages_fr.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/JAXPValidationMessages_it.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/JAXPValidationMessages_ja.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/JAXPValidationMessages_ko.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/JAXPValidationMessages_pt_BR.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/JAXPValidationMessages_sv.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/JAXPValidationMessages_zh_CN.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/JAXPValidationMessages_zh_TW.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/SAXMessages.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/SAXMessages_de.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/SAXMessages_es.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/SAXMessages_fr.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/SAXMessages_it.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/SAXMessages_ja.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/SAXMessages_ko.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/SAXMessages_pt_BR.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/SAXMessages_sv.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/SAXMessages_zh_CN.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/SAXMessages_zh_TW.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XIncludeMessages.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XIncludeMessages_de.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XIncludeMessages_es.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XIncludeMessages_fr.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XIncludeMessages_it.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XIncludeMessages_ja.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XIncludeMessages_ko.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XIncludeMessages_pt_BR.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XIncludeMessages_sv.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XIncludeMessages_zh_CN.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XIncludeMessages_zh_TW.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessageFormatter.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessageFormatter_de.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessageFormatter_es.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessageFormatter_fr.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessageFormatter_it.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessageFormatter_ja.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessageFormatter_ko.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessageFormatter_pt_BR.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessageFormatter_sv.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessageFormatter_zh_CN.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessageFormatter_zh_TW.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_de.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_es.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_fr.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_it.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_ja.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_ko.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_pt_BR.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_sv.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_zh_CN.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_zh_TW.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLSchemaMessages.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLSchemaMessages_de.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLSchemaMessages_es.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLSchemaMessages_fr.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLSchemaMessages_it.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLSchemaMessages_ja.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLSchemaMessages_ko.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLSchemaMessages_pt_BR.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLSchemaMessages_sv.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLSchemaMessages_zh_CN.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLSchemaMessages_zh_TW.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLSerializerMessages.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLSerializerMessages_de.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLSerializerMessages_es.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLSerializerMessages_fr.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLSerializerMessages_it.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLSerializerMessages_ja.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLSerializerMessages_ko.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLSerializerMessages_pt_BR.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLSerializerMessages_sv.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLSerializerMessages_zh_CN.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLSerializerMessages_zh_TW.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XPointerMessages.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XPointerMessages_de.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XPointerMessages_es.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XPointerMessages_fr.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XPointerMessages_it.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XPointerMessages_ja.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XPointerMessages_ko.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XPointerMessages_pt_BR.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XPointerMessages_sv.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XPointerMessages_zh_CN.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XPointerMessages_zh_TW.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/validation/EntityState.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/validation/ValidationManager.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/validation/ValidationState.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xpath/XPath.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xpath/XPathException.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xpath/regex/BMPattern.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xpath/regex/CaseInsensitiveMap.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xpath/regex/Match.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xpath/regex/Op.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xpath/regex/ParseException.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xpath/regex/ParserForXMLSchema.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xpath/regex/REUtil.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xpath/regex/RangeToken.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xpath/regex/RegexParser.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xpath/regex/RegularExpression.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xpath/regex/Token.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xpath/regex/message.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/xpath/regex/message_fr.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/xpath/regex/message_ja.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/AttributePSVImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/ElementPSVImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/SchemaGrammar.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/SchemaNamespaceSupport.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/SchemaSymbols.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/SubstitutionGroupHandler.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/XMLSchemaException.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/XMLSchemaLoader.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/XMLSchemaValidator.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/XSAnnotationImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/XSAttributeDecl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/XSAttributeGroupDecl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/XSAttributeUseImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/XSComplexTypeDecl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/XSConstraints.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/XSDDescription.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/XSDeclarationPool.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/XSElementDecl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/XSGrammarBucket.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/XSGroupDecl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/XSImplementationImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/XSLoaderImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/XSMessageFormatter.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/XSModelGroupImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/XSModelImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/XSNotationDecl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/XSParticleDecl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/XSWildcardDecl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/identity/Field.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/identity/FieldActivator.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/identity/IdentityConstraint.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/identity/KeyRef.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/identity/Selector.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/identity/UniqueOrKey.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/identity/ValueStore.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/identity/XPathMatcher.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/models/CMBuilder.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/models/CMNodeFactory.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/models/XSAllCM.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/models/XSCMBinOp.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/models/XSCMLeaf.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/models/XSCMRepeatingLeaf.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/models/XSCMUniOp.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/models/XSCMValidator.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/models/XSDFACM.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/models/XSEmptyCM.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/opti/AttrImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/opti/DefaultDocument.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/opti/DefaultElement.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/opti/DefaultNode.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/opti/DefaultText.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/opti/DefaultXMLDocumentHandler.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/opti/ElementImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/opti/NamedNodeMapImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/opti/NodeImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/opti/SchemaDOM.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/opti/SchemaDOMImplementation.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/opti/SchemaDOMParser.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/opti/SchemaParsingConfig.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/opti/TextImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/traversers/SchemaContentHandler.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/traversers/StAXSchemaParser.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSAnnotationInfo.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSAttributeChecker.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSDAbstractIDConstraintTraverser.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSDAbstractParticleTraverser.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSDAbstractTraverser.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSDAttributeGroupTraverser.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSDAttributeTraverser.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSDComplexTypeTraverser.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSDElementTraverser.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSDGroupTraverser.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSDHandler.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSDKeyrefTraverser.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSDNotationTraverser.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSDSimpleTypeTraverser.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSDUniqueOrKeyTraverser.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSDWildcardTraverser.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSDocumentInfo.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/util/LSInputListImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/util/ObjectListImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/util/ShortListImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/util/SimpleLocator.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/util/StringListImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/util/XInt.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/util/XIntPool.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/util/XSGrammarPool.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/util/XSInputSource.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/util/XSNamedMap4Types.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/util/XSNamedMapImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/util/XSObjectListImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/DefaultValidationErrorHandler.java - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/DocumentBuilderFactoryImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/DocumentBuilderImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/JAXPConstants.java - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/JAXPValidatorComponent.java - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/SAXParserFactoryImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/SAXParserImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/SchemaValidatorConfiguration.java - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/TeeXMLDocumentFilterImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/UnparsedEntityHandler.java - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/datatype/DatatypeFactoryImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/datatype/DurationDayTimeImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/datatype/DurationImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/datatype/DurationYearMonthImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/datatype/XMLGregorianCalendarImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/datatype/javax.xml.datatype.DatatypeFactory - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/javax.xml.parsers.DocumentBuilderFactory - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/javax.xml.parsers.SAXParserFactory - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/validation/AbstractXMLSchema.java - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/validation/DOMDocumentHandler.java - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/validation/DOMResultAugmentor.java - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/validation/DOMResultBuilder.java - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/validation/DOMValidatorHelper.java - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/validation/DraconianErrorHandler.java - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/validation/EmptyXMLSchema.java - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/validation/ErrorHandlerAdaptor.java - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/validation/JAXPValidationMessageFormatter.java - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/validation/ReadOnlyGrammarPool.java - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/validation/SimpleXMLSchema.java - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/validation/SoftReferenceGrammarPool.java - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/validation/StAXValidatorHelper.java - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/validation/StreamValidatorHelper.java - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/validation/Util.java - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/validation/ValidatorHandlerImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/validation/ValidatorHelper.java - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/validation/ValidatorImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/validation/WeakReferenceXMLSchema.java - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/validation/WrappedSAXException.java - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/validation/XMLSchema.java - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/validation/XMLSchemaFactory.java - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/validation/XMLSchemaValidatorComponentManager.java - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/validation/XSGrammarPoolContainer.java - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/validation/javax.xml.validation.SchemaFactory - src/share/classes/com/sun/org/apache/xerces/internal/parsers/AbstractDOMParser.java - src/share/classes/com/sun/org/apache/xerces/internal/parsers/AbstractSAXParser.java - src/share/classes/com/sun/org/apache/xerces/internal/parsers/AbstractXMLDocumentParser.java - src/share/classes/com/sun/org/apache/xerces/internal/parsers/BasicParserConfiguration.java - src/share/classes/com/sun/org/apache/xerces/internal/parsers/CachingParserPool.java - src/share/classes/com/sun/org/apache/xerces/internal/parsers/DOMParser.java - src/share/classes/com/sun/org/apache/xerces/internal/parsers/DOMParserImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/parsers/DTDConfiguration.java - src/share/classes/com/sun/org/apache/xerces/internal/parsers/DTDParser.java - src/share/classes/com/sun/org/apache/xerces/internal/parsers/IntegratedParserConfiguration.java - src/share/classes/com/sun/org/apache/xerces/internal/parsers/NonValidatingConfiguration.java - src/share/classes/com/sun/org/apache/xerces/internal/parsers/ObjectFactory.java - src/share/classes/com/sun/org/apache/xerces/internal/parsers/SAXParser.java - src/share/classes/com/sun/org/apache/xerces/internal/parsers/SecurityConfiguration.java - src/share/classes/com/sun/org/apache/xerces/internal/parsers/SecuritySupport.java - src/share/classes/com/sun/org/apache/xerces/internal/parsers/StandardParserConfiguration.java - src/share/classes/com/sun/org/apache/xerces/internal/parsers/XIncludeAwareParserConfiguration.java - src/share/classes/com/sun/org/apache/xerces/internal/parsers/XIncludeParserConfiguration.java - src/share/classes/com/sun/org/apache/xerces/internal/parsers/XML11Configurable.java - src/share/classes/com/sun/org/apache/xerces/internal/parsers/XML11Configuration.java - src/share/classes/com/sun/org/apache/xerces/internal/parsers/XML11DTDConfiguration.java - src/share/classes/com/sun/org/apache/xerces/internal/parsers/XML11NonValidatingConfiguration.java - src/share/classes/com/sun/org/apache/xerces/internal/parsers/XMLDocumentParser.java - src/share/classes/com/sun/org/apache/xerces/internal/parsers/XMLGrammarCachingConfiguration.java - src/share/classes/com/sun/org/apache/xerces/internal/parsers/XMLGrammarParser.java - src/share/classes/com/sun/org/apache/xerces/internal/parsers/XMLGrammarPreparser.java - src/share/classes/com/sun/org/apache/xerces/internal/parsers/XMLParser.java - src/share/classes/com/sun/org/apache/xerces/internal/parsers/XPointerParserConfiguration.java - src/share/classes/com/sun/org/apache/xerces/internal/parsers/org.apache.xerces.xni.parser.DTDConfiguration - src/share/classes/com/sun/org/apache/xerces/internal/parsers/org.apache.xerces.xni.parser.XML11Configuration - src/share/classes/com/sun/org/apache/xerces/internal/parsers/org.apache.xerces.xni.parser.XMLParserConfiguration - src/share/classes/com/sun/org/apache/xerces/internal/parsers/org.xml.sax.driver - src/share/classes/com/sun/org/apache/xerces/internal/util/AttributesProxy.java - src/share/classes/com/sun/org/apache/xerces/internal/util/AugmentationsImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/util/DOMEntityResolverWrapper.java - src/share/classes/com/sun/org/apache/xerces/internal/util/DOMErrorHandlerWrapper.java - src/share/classes/com/sun/org/apache/xerces/internal/util/DOMInputSource.java - src/share/classes/com/sun/org/apache/xerces/internal/util/DOMUtil.java - src/share/classes/com/sun/org/apache/xerces/internal/util/DatatypeMessageFormatter.java - src/share/classes/com/sun/org/apache/xerces/internal/util/DefaultErrorHandler.java - src/share/classes/com/sun/org/apache/xerces/internal/util/DraconianErrorHandler.java - src/share/classes/com/sun/org/apache/xerces/internal/util/EncodingMap.java - src/share/classes/com/sun/org/apache/xerces/internal/util/EntityResolver2Wrapper.java - src/share/classes/com/sun/org/apache/xerces/internal/util/EntityResolverWrapper.java - src/share/classes/com/sun/org/apache/xerces/internal/util/ErrorHandlerProxy.java - src/share/classes/com/sun/org/apache/xerces/internal/util/ErrorHandlerWrapper.java - src/share/classes/com/sun/org/apache/xerces/internal/util/FeatureState.java - src/share/classes/com/sun/org/apache/xerces/internal/util/HTTPInputSource.java - src/share/classes/com/sun/org/apache/xerces/internal/util/IntStack.java - src/share/classes/com/sun/org/apache/xerces/internal/util/JAXPNamespaceContextWrapper.java - src/share/classes/com/sun/org/apache/xerces/internal/util/LocatorProxy.java - src/share/classes/com/sun/org/apache/xerces/internal/util/LocatorWrapper.java - src/share/classes/com/sun/org/apache/xerces/internal/util/MessageFormatter.java - src/share/classes/com/sun/org/apache/xerces/internal/util/NamespaceContextWrapper.java - src/share/classes/com/sun/org/apache/xerces/internal/util/NamespaceSupport.java - src/share/classes/com/sun/org/apache/xerces/internal/util/ParserConfigurationSettings.java - src/share/classes/com/sun/org/apache/xerces/internal/util/PropertyState.java - src/share/classes/com/sun/org/apache/xerces/internal/util/SAX2XNI.java - src/share/classes/com/sun/org/apache/xerces/internal/util/SAXInputSource.java - src/share/classes/com/sun/org/apache/xerces/internal/util/SAXLocatorWrapper.java - src/share/classes/com/sun/org/apache/xerces/internal/util/SAXMessageFormatter.java - src/share/classes/com/sun/org/apache/xerces/internal/util/SecurityManager.java - src/share/classes/com/sun/org/apache/xerces/internal/util/ShadowedSymbolTable.java - src/share/classes/com/sun/org/apache/xerces/internal/util/StAXInputSource.java - src/share/classes/com/sun/org/apache/xerces/internal/util/StAXLocationWrapper.java - src/share/classes/com/sun/org/apache/xerces/internal/util/Status.java - src/share/classes/com/sun/org/apache/xerces/internal/util/SymbolHash.java - src/share/classes/com/sun/org/apache/xerces/internal/util/SymbolTable.java - src/share/classes/com/sun/org/apache/xerces/internal/util/SynchronizedSymbolTable.java - src/share/classes/com/sun/org/apache/xerces/internal/util/TeeXMLDocumentFilterImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/util/TypeInfoImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/util/URI.java - src/share/classes/com/sun/org/apache/xerces/internal/util/XML11Char.java - src/share/classes/com/sun/org/apache/xerces/internal/util/XMLAttributesImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/util/XMLAttributesIteratorImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/util/XMLCatalogResolver.java - src/share/classes/com/sun/org/apache/xerces/internal/util/XMLChar.java - src/share/classes/com/sun/org/apache/xerces/internal/util/XMLDocumentFilterImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/util/XMLEntityDescriptionImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/util/XMLErrorCode.java - src/share/classes/com/sun/org/apache/xerces/internal/util/XMLGrammarPoolImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/util/XMLInputSourceAdaptor.java - src/share/classes/com/sun/org/apache/xerces/internal/util/XMLResourceIdentifierImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/util/XMLStringBuffer.java - src/share/classes/com/sun/org/apache/xerces/internal/util/XMLSymbols.java - src/share/classes/com/sun/org/apache/xerces/internal/xinclude/MultipleScopeNamespaceSupport.java - src/share/classes/com/sun/org/apache/xerces/internal/xinclude/ObjectFactory.java - src/share/classes/com/sun/org/apache/xerces/internal/xinclude/SecuritySupport.java - src/share/classes/com/sun/org/apache/xerces/internal/xinclude/XInclude11TextReader.java - src/share/classes/com/sun/org/apache/xerces/internal/xinclude/XIncludeHandler.java - src/share/classes/com/sun/org/apache/xerces/internal/xinclude/XIncludeMessageFormatter.java - src/share/classes/com/sun/org/apache/xerces/internal/xinclude/XIncludeNamespaceSupport.java - src/share/classes/com/sun/org/apache/xerces/internal/xinclude/XIncludeTextReader.java - src/share/classes/com/sun/org/apache/xerces/internal/xinclude/XPointerElementHandler.java - src/share/classes/com/sun/org/apache/xerces/internal/xinclude/XPointerFramework.java - src/share/classes/com/sun/org/apache/xerces/internal/xinclude/XPointerSchema.java - src/share/classes/com/sun/org/apache/xerces/internal/xni/Augmentations.java - src/share/classes/com/sun/org/apache/xerces/internal/xni/NamespaceContext.java - src/share/classes/com/sun/org/apache/xerces/internal/xni/QName.java - src/share/classes/com/sun/org/apache/xerces/internal/xni/XMLAttributes.java - src/share/classes/com/sun/org/apache/xerces/internal/xni/XMLDTDContentModelHandler.java - src/share/classes/com/sun/org/apache/xerces/internal/xni/XMLDTDHandler.java - src/share/classes/com/sun/org/apache/xerces/internal/xni/XMLDocumentFragmentHandler.java - src/share/classes/com/sun/org/apache/xerces/internal/xni/XMLDocumentHandler.java - src/share/classes/com/sun/org/apache/xerces/internal/xni/XMLLocator.java - src/share/classes/com/sun/org/apache/xerces/internal/xni/XMLResourceIdentifier.java - src/share/classes/com/sun/org/apache/xerces/internal/xni/XMLString.java - src/share/classes/com/sun/org/apache/xerces/internal/xni/XNIException.java - src/share/classes/com/sun/org/apache/xerces/internal/xni/grammars/Grammar.java - src/share/classes/com/sun/org/apache/xerces/internal/xni/grammars/XMLDTDDescription.java - src/share/classes/com/sun/org/apache/xerces/internal/xni/grammars/XMLGrammarDescription.java - src/share/classes/com/sun/org/apache/xerces/internal/xni/grammars/XMLGrammarLoader.java - src/share/classes/com/sun/org/apache/xerces/internal/xni/grammars/XMLGrammarPool.java - src/share/classes/com/sun/org/apache/xerces/internal/xni/grammars/XMLSchemaDescription.java - src/share/classes/com/sun/org/apache/xerces/internal/xni/grammars/XSGrammar.java - src/share/classes/com/sun/org/apache/xerces/internal/xni/parser/XMLComponent.java - src/share/classes/com/sun/org/apache/xerces/internal/xni/parser/XMLComponentManager.java - src/share/classes/com/sun/org/apache/xerces/internal/xni/parser/XMLConfigurationException.java - src/share/classes/com/sun/org/apache/xerces/internal/xni/parser/XMLDTDContentModelFilter.java - src/share/classes/com/sun/org/apache/xerces/internal/xni/parser/XMLDTDContentModelSource.java - src/share/classes/com/sun/org/apache/xerces/internal/xni/parser/XMLDTDFilter.java - src/share/classes/com/sun/org/apache/xerces/internal/xni/parser/XMLDTDScanner.java - src/share/classes/com/sun/org/apache/xerces/internal/xni/parser/XMLDTDSource.java - src/share/classes/com/sun/org/apache/xerces/internal/xni/parser/XMLDocumentFilter.java - src/share/classes/com/sun/org/apache/xerces/internal/xni/parser/XMLDocumentScanner.java - src/share/classes/com/sun/org/apache/xerces/internal/xni/parser/XMLDocumentSource.java - src/share/classes/com/sun/org/apache/xerces/internal/xni/parser/XMLEntityResolver.java - src/share/classes/com/sun/org/apache/xerces/internal/xni/parser/XMLErrorHandler.java - src/share/classes/com/sun/org/apache/xerces/internal/xni/parser/XMLInputSource.java - src/share/classes/com/sun/org/apache/xerces/internal/xni/parser/XMLParseException.java - src/share/classes/com/sun/org/apache/xerces/internal/xni/parser/XMLParserConfiguration.java - src/share/classes/com/sun/org/apache/xerces/internal/xni/parser/XMLPullParserConfiguration.java - src/share/classes/com/sun/org/apache/xerces/internal/xpointer/ElementSchemePointer.java - src/share/classes/com/sun/org/apache/xerces/internal/xpointer/ShortHandPointer.java - src/share/classes/com/sun/org/apache/xerces/internal/xpointer/XPointerErrorHandler.java - src/share/classes/com/sun/org/apache/xerces/internal/xpointer/XPointerHandler.java - src/share/classes/com/sun/org/apache/xerces/internal/xpointer/XPointerMessageFormatter.java - src/share/classes/com/sun/org/apache/xerces/internal/xpointer/XPointerPart.java - src/share/classes/com/sun/org/apache/xerces/internal/xpointer/XPointerProcessor.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/AttributePSVI.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/ElementPSVI.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/ItemPSVI.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/LSInputList.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/PSVIProvider.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/ShortList.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/StringList.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/XSAnnotation.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/XSAttributeDeclaration.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/XSAttributeGroupDefinition.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/XSAttributeUse.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/XSComplexTypeDefinition.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/XSConstants.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/XSElementDeclaration.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/XSException.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/XSFacet.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/XSIDCDefinition.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/XSImplementation.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/XSLoader.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/XSModel.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/XSModelGroup.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/XSModelGroupDefinition.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/XSMultiValueFacet.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/XSNamedMap.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/XSNamespaceItem.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/XSNamespaceItemList.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/XSNotationDeclaration.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/XSObject.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/XSObjectList.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/XSParticle.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/XSSimpleTypeDefinition.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/XSTerm.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/XSTypeDefinition.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/XSWildcard.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/datatypes/ByteList.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/datatypes/ObjectList.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/datatypes/XSDateTime.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/datatypes/XSDecimal.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/datatypes/XSDouble.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/datatypes/XSFloat.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/datatypes/XSQName.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/datatypes/package.html - src/share/classes/com/sun/org/apache/xml/internal/dtm/Axis.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/DTM.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/DTMAxisIterator.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/DTMAxisTraverser.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/DTMConfigurationException.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/DTMDOMException.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/DTMException.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/DTMFilter.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/DTMIterator.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/DTMManager.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/DTMWSFilter.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/ObjectFactory.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/SecuritySupport.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/SecuritySupport12.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/ref/ChunkedIntArray.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/ref/CoroutineManager.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/ref/CoroutineParser.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/ref/CustomStringPool.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/ref/DTMAxisIterNodeList.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/ref/DTMAxisIteratorBase.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/ref/DTMChildIterNodeList.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/ref/DTMDefaultBase.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/ref/DTMDefaultBaseIterators.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/ref/DTMDefaultBaseTraversers.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/ref/DTMDocumentImpl.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/ref/DTMManagerDefault.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/ref/DTMNamedNodeMap.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/ref/DTMNodeIterator.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/ref/DTMNodeList.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/ref/DTMNodeListBase.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/ref/DTMNodeProxy.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/ref/DTMSafeStringPool.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/ref/DTMStringPool.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/ref/DTMTreeWalker.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/ref/EmptyIterator.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/ref/ExpandedNameTable.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/ref/ExtendedType.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/ref/IncrementalSAXSource.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/ref/IncrementalSAXSource_Filter.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/ref/IncrementalSAXSource_Xerces.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/ref/NodeLocator.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/ref/ObjectFactory.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/ref/SecuritySupport.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/ref/SecuritySupport12.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/ref/dom2dtm/DOM2DTM.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/ref/dom2dtm/DOM2DTMdefaultNamespaceDeclarationNode.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/ref/sax2dtm/SAX2DTM.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/ref/sax2dtm/SAX2DTM2.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/ref/sax2dtm/SAX2RTFDTM.java - src/share/classes/com/sun/org/apache/xml/internal/res/XMLErrorResources.java - src/share/classes/com/sun/org/apache/xml/internal/res/XMLErrorResources_ca.java - src/share/classes/com/sun/org/apache/xml/internal/res/XMLErrorResources_cs.java - src/share/classes/com/sun/org/apache/xml/internal/res/XMLErrorResources_de.java - src/share/classes/com/sun/org/apache/xml/internal/res/XMLErrorResources_en.java - src/share/classes/com/sun/org/apache/xml/internal/res/XMLErrorResources_es.java - src/share/classes/com/sun/org/apache/xml/internal/res/XMLErrorResources_fr.java - src/share/classes/com/sun/org/apache/xml/internal/res/XMLErrorResources_it.java - src/share/classes/com/sun/org/apache/xml/internal/res/XMLErrorResources_ja.java - src/share/classes/com/sun/org/apache/xml/internal/res/XMLErrorResources_ko.java - src/share/classes/com/sun/org/apache/xml/internal/res/XMLErrorResources_pt_BR.java - src/share/classes/com/sun/org/apache/xml/internal/res/XMLErrorResources_sk.java - src/share/classes/com/sun/org/apache/xml/internal/res/XMLErrorResources_sv.java - src/share/classes/com/sun/org/apache/xml/internal/res/XMLErrorResources_tr.java - src/share/classes/com/sun/org/apache/xml/internal/res/XMLErrorResources_zh_CN.java - src/share/classes/com/sun/org/apache/xml/internal/res/XMLErrorResources_zh_HK.java - src/share/classes/com/sun/org/apache/xml/internal/res/XMLErrorResources_zh_TW.java - src/share/classes/com/sun/org/apache/xml/internal/res/XMLMessages.java - src/share/classes/com/sun/org/apache/xml/internal/resolver/Catalog.java - src/share/classes/com/sun/org/apache/xml/internal/resolver/CatalogEntry.java - src/share/classes/com/sun/org/apache/xml/internal/resolver/CatalogException.java - src/share/classes/com/sun/org/apache/xml/internal/resolver/CatalogManager.java - src/share/classes/com/sun/org/apache/xml/internal/resolver/Resolver.java - src/share/classes/com/sun/org/apache/xml/internal/resolver/helpers/BootstrapResolver.java - src/share/classes/com/sun/org/apache/xml/internal/resolver/helpers/Debug.java - src/share/classes/com/sun/org/apache/xml/internal/resolver/helpers/FileURL.java - src/share/classes/com/sun/org/apache/xml/internal/resolver/helpers/Namespaces.java - src/share/classes/com/sun/org/apache/xml/internal/resolver/helpers/PublicId.java - src/share/classes/com/sun/org/apache/xml/internal/resolver/readers/CatalogReader.java - src/share/classes/com/sun/org/apache/xml/internal/resolver/readers/DOMCatalogParser.java - src/share/classes/com/sun/org/apache/xml/internal/resolver/readers/DOMCatalogReader.java - src/share/classes/com/sun/org/apache/xml/internal/resolver/readers/ExtendedXMLCatalogReader.java - src/share/classes/com/sun/org/apache/xml/internal/resolver/readers/OASISXMLCatalogReader.java - src/share/classes/com/sun/org/apache/xml/internal/resolver/readers/SAXCatalogParser.java - src/share/classes/com/sun/org/apache/xml/internal/resolver/readers/SAXCatalogReader.java - src/share/classes/com/sun/org/apache/xml/internal/resolver/readers/SAXParserHandler.java - src/share/classes/com/sun/org/apache/xml/internal/resolver/readers/TR9401CatalogReader.java - src/share/classes/com/sun/org/apache/xml/internal/resolver/readers/TextCatalogReader.java - src/share/classes/com/sun/org/apache/xml/internal/resolver/readers/XCatalogReader.java - src/share/classes/com/sun/org/apache/xml/internal/resolver/tools/CatalogResolver.java - src/share/classes/com/sun/org/apache/xml/internal/resolver/tools/ResolvingParser.java - src/share/classes/com/sun/org/apache/xml/internal/resolver/tools/ResolvingXMLFilter.java - src/share/classes/com/sun/org/apache/xml/internal/resolver/tools/ResolvingXMLReader.java - src/share/classes/com/sun/org/apache/xml/internal/serialize/BaseMarkupSerializer.java - src/share/classes/com/sun/org/apache/xml/internal/serialize/DOMSerializer.java - src/share/classes/com/sun/org/apache/xml/internal/serialize/DOMSerializerImpl.java - src/share/classes/com/sun/org/apache/xml/internal/serialize/ElementState.java - src/share/classes/com/sun/org/apache/xml/internal/serialize/EncodingInfo.java - src/share/classes/com/sun/org/apache/xml/internal/serialize/Encodings.java - src/share/classes/com/sun/org/apache/xml/internal/serialize/HTMLEntities.res - src/share/classes/com/sun/org/apache/xml/internal/serialize/HTMLSerializer.java - src/share/classes/com/sun/org/apache/xml/internal/serialize/HTMLdtd.java - src/share/classes/com/sun/org/apache/xml/internal/serialize/IndentPrinter.java - src/share/classes/com/sun/org/apache/xml/internal/serialize/LineSeparator.java - src/share/classes/com/sun/org/apache/xml/internal/serialize/Method.java - src/share/classes/com/sun/org/apache/xml/internal/serialize/ObjectFactory.java - src/share/classes/com/sun/org/apache/xml/internal/serialize/OutputFormat.java - src/share/classes/com/sun/org/apache/xml/internal/serialize/Printer.java - src/share/classes/com/sun/org/apache/xml/internal/serialize/SecuritySupport.java - src/share/classes/com/sun/org/apache/xml/internal/serialize/Serializer.java - src/share/classes/com/sun/org/apache/xml/internal/serialize/SerializerFactory.java - src/share/classes/com/sun/org/apache/xml/internal/serialize/SerializerFactoryImpl.java - src/share/classes/com/sun/org/apache/xml/internal/serialize/TextSerializer.java - src/share/classes/com/sun/org/apache/xml/internal/serialize/XHTMLSerializer.java - src/share/classes/com/sun/org/apache/xml/internal/serialize/XML11Serializer.java - src/share/classes/com/sun/org/apache/xml/internal/serialize/XMLSerializer.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/AttributesImplSerializer.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/CharInfo.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/DOMSerializer.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/ElemContext.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/ElemDesc.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/EmptySerializer.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/EncodingInfo.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/Encodings.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/Encodings.properties - src/share/classes/com/sun/org/apache/xml/internal/serializer/ExtendedContentHandler.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/ExtendedLexicalHandler.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/HTMLEntities.properties - src/share/classes/com/sun/org/apache/xml/internal/serializer/Method.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/NamespaceMappings.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/ObjectFactory.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/OutputPropertiesFactory.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/OutputPropertyUtils.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/SecuritySupport.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/SecuritySupport12.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/SerializationHandler.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/Serializer.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/SerializerBase.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/SerializerConstants.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/SerializerFactory.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/SerializerTrace.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/SerializerTraceWriter.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/ToHTMLSAXHandler.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/ToHTMLStream.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/ToSAXHandler.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/ToStream.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/ToTextSAXHandler.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/ToTextStream.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/ToUnknownStream.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/ToXMLSAXHandler.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/ToXMLStream.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/TransformStateSetter.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/TreeWalker.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/Utils.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/Version.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/WriterChain.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/WriterToASCI.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/WriterToUTF8Buffered.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/XMLEntities.properties - src/share/classes/com/sun/org/apache/xml/internal/serializer/XSLOutputAttributes.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/output_html.properties - src/share/classes/com/sun/org/apache/xml/internal/serializer/output_text.properties - src/share/classes/com/sun/org/apache/xml/internal/serializer/output_unknown.properties - src/share/classes/com/sun/org/apache/xml/internal/serializer/output_xml.properties - src/share/classes/com/sun/org/apache/xml/internal/serializer/package.html - src/share/classes/com/sun/org/apache/xml/internal/serializer/utils/AttList.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/utils/BoolStack.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/utils/DOM2Helper.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/utils/Messages.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/utils/MsgKey.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/utils/SerializerMessages.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/utils/SerializerMessages_ca.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/utils/SerializerMessages_cs.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/utils/SerializerMessages_de.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/utils/SerializerMessages_en.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/utils/SerializerMessages_es.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/utils/SerializerMessages_fr.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/utils/SerializerMessages_it.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/utils/SerializerMessages_ja.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/utils/SerializerMessages_ko.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/utils/SerializerMessages_sv.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/utils/SerializerMessages_zh_CN.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/utils/SerializerMessages_zh_TW.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/utils/StringToIntTable.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/utils/SystemIDResolver.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/utils/URI.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/utils/Utils.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/utils/WrappedRuntimeException.java - src/share/classes/com/sun/org/apache/xml/internal/utils/AttList.java - src/share/classes/com/sun/org/apache/xml/internal/utils/BoolStack.java - src/share/classes/com/sun/org/apache/xml/internal/utils/CharKey.java - src/share/classes/com/sun/org/apache/xml/internal/utils/Constants.java - src/share/classes/com/sun/org/apache/xml/internal/utils/DOM2Helper.java - src/share/classes/com/sun/org/apache/xml/internal/utils/DOMBuilder.java - src/share/classes/com/sun/org/apache/xml/internal/utils/DOMHelper.java - src/share/classes/com/sun/org/apache/xml/internal/utils/DOMOrder.java - src/share/classes/com/sun/org/apache/xml/internal/utils/DefaultErrorHandler.java - src/share/classes/com/sun/org/apache/xml/internal/utils/ElemDesc.java - src/share/classes/com/sun/org/apache/xml/internal/utils/FastStringBuffer.java - src/share/classes/com/sun/org/apache/xml/internal/utils/Hashtree2Node.java - src/share/classes/com/sun/org/apache/xml/internal/utils/IntStack.java - src/share/classes/com/sun/org/apache/xml/internal/utils/IntVector.java - src/share/classes/com/sun/org/apache/xml/internal/utils/ListingErrorHandler.java - src/share/classes/com/sun/org/apache/xml/internal/utils/LocaleUtility.java - src/share/classes/com/sun/org/apache/xml/internal/utils/MutableAttrListImpl.java - src/share/classes/com/sun/org/apache/xml/internal/utils/NSInfo.java - src/share/classes/com/sun/org/apache/xml/internal/utils/NameSpace.java - src/share/classes/com/sun/org/apache/xml/internal/utils/NamespaceSupport2.java - src/share/classes/com/sun/org/apache/xml/internal/utils/NodeConsumer.java - src/share/classes/com/sun/org/apache/xml/internal/utils/NodeVector.java - src/share/classes/com/sun/org/apache/xml/internal/utils/ObjectFactory.java - src/share/classes/com/sun/org/apache/xml/internal/utils/ObjectPool.java - src/share/classes/com/sun/org/apache/xml/internal/utils/ObjectStack.java - src/share/classes/com/sun/org/apache/xml/internal/utils/ObjectVector.java - src/share/classes/com/sun/org/apache/xml/internal/utils/PrefixResolver.java - src/share/classes/com/sun/org/apache/xml/internal/utils/PrefixResolverDefault.java - src/share/classes/com/sun/org/apache/xml/internal/utils/QName.java - src/share/classes/com/sun/org/apache/xml/internal/utils/RawCharacterHandler.java - src/share/classes/com/sun/org/apache/xml/internal/utils/SAXSourceLocator.java - src/share/classes/com/sun/org/apache/xml/internal/utils/SecuritySupport.java - src/share/classes/com/sun/org/apache/xml/internal/utils/SecuritySupport12.java - src/share/classes/com/sun/org/apache/xml/internal/utils/SerializableLocatorImpl.java - src/share/classes/com/sun/org/apache/xml/internal/utils/StopParseException.java - src/share/classes/com/sun/org/apache/xml/internal/utils/StringBufferPool.java - src/share/classes/com/sun/org/apache/xml/internal/utils/StringComparable.java - src/share/classes/com/sun/org/apache/xml/internal/utils/StringToIntTable.java - src/share/classes/com/sun/org/apache/xml/internal/utils/StringToStringTable.java - src/share/classes/com/sun/org/apache/xml/internal/utils/StringToStringTableVector.java - src/share/classes/com/sun/org/apache/xml/internal/utils/StringVector.java - src/share/classes/com/sun/org/apache/xml/internal/utils/StylesheetPIHandler.java - src/share/classes/com/sun/org/apache/xml/internal/utils/SuballocatedByteVector.java - src/share/classes/com/sun/org/apache/xml/internal/utils/SuballocatedIntVector.java - src/share/classes/com/sun/org/apache/xml/internal/utils/SystemIDResolver.java - src/share/classes/com/sun/org/apache/xml/internal/utils/ThreadControllerWrapper.java - src/share/classes/com/sun/org/apache/xml/internal/utils/TreeWalker.java - src/share/classes/com/sun/org/apache/xml/internal/utils/Trie.java - src/share/classes/com/sun/org/apache/xml/internal/utils/URI.java - src/share/classes/com/sun/org/apache/xml/internal/utils/UnImplNode.java - src/share/classes/com/sun/org/apache/xml/internal/utils/WrappedRuntimeException.java - src/share/classes/com/sun/org/apache/xml/internal/utils/WrongParserException.java - src/share/classes/com/sun/org/apache/xml/internal/utils/XML11Char.java - src/share/classes/com/sun/org/apache/xml/internal/utils/XMLChar.java - src/share/classes/com/sun/org/apache/xml/internal/utils/XMLCharacterRecognizer.java - src/share/classes/com/sun/org/apache/xml/internal/utils/XMLReaderManager.java - src/share/classes/com/sun/org/apache/xml/internal/utils/XMLString.java - src/share/classes/com/sun/org/apache/xml/internal/utils/XMLStringDefault.java - src/share/classes/com/sun/org/apache/xml/internal/utils/XMLStringFactory.java - src/share/classes/com/sun/org/apache/xml/internal/utils/XMLStringFactoryDefault.java - src/share/classes/com/sun/org/apache/xml/internal/utils/package.html - src/share/classes/com/sun/org/apache/xml/internal/utils/res/CharArrayWrapper.java - src/share/classes/com/sun/org/apache/xml/internal/utils/res/IntArrayWrapper.java - src/share/classes/com/sun/org/apache/xml/internal/utils/res/LongArrayWrapper.java - src/share/classes/com/sun/org/apache/xml/internal/utils/res/StringArrayWrapper.java - src/share/classes/com/sun/org/apache/xml/internal/utils/res/XResourceBundle.java - src/share/classes/com/sun/org/apache/xml/internal/utils/res/XResourceBundleBase.java - src/share/classes/com/sun/org/apache/xml/internal/utils/res/XResources_de.java - src/share/classes/com/sun/org/apache/xml/internal/utils/res/XResources_en.java - src/share/classes/com/sun/org/apache/xml/internal/utils/res/XResources_es.java - src/share/classes/com/sun/org/apache/xml/internal/utils/res/XResources_fr.java - src/share/classes/com/sun/org/apache/xml/internal/utils/res/XResources_it.java - src/share/classes/com/sun/org/apache/xml/internal/utils/res/XResources_ja_JP_A.java - src/share/classes/com/sun/org/apache/xml/internal/utils/res/XResources_ja_JP_HA.java - src/share/classes/com/sun/org/apache/xml/internal/utils/res/XResources_ja_JP_HI.java - src/share/classes/com/sun/org/apache/xml/internal/utils/res/XResources_ja_JP_I.java - src/share/classes/com/sun/org/apache/xml/internal/utils/res/XResources_ko.java - src/share/classes/com/sun/org/apache/xml/internal/utils/res/XResources_sv.java - src/share/classes/com/sun/org/apache/xml/internal/utils/res/XResources_zh_CN.java - src/share/classes/com/sun/org/apache/xml/internal/utils/res/XResources_zh_TW.java - src/share/classes/com/sun/org/apache/xpath/internal/Arg.java - src/share/classes/com/sun/org/apache/xpath/internal/CachedXPathAPI.java - src/share/classes/com/sun/org/apache/xpath/internal/Expression.java - src/share/classes/com/sun/org/apache/xpath/internal/ExpressionNode.java - src/share/classes/com/sun/org/apache/xpath/internal/ExpressionOwner.java - src/share/classes/com/sun/org/apache/xpath/internal/ExtensionsProvider.java - src/share/classes/com/sun/org/apache/xpath/internal/FoundIndex.java - src/share/classes/com/sun/org/apache/xpath/internal/NodeSet.java - src/share/classes/com/sun/org/apache/xpath/internal/NodeSetDTM.java - src/share/classes/com/sun/org/apache/xpath/internal/SourceTree.java - src/share/classes/com/sun/org/apache/xpath/internal/SourceTreeManager.java - src/share/classes/com/sun/org/apache/xpath/internal/VariableStack.java - src/share/classes/com/sun/org/apache/xpath/internal/WhitespaceStrippingElementMatcher.java - src/share/classes/com/sun/org/apache/xpath/internal/XPath.java - src/share/classes/com/sun/org/apache/xpath/internal/XPathAPI.java - src/share/classes/com/sun/org/apache/xpath/internal/XPathContext.java - src/share/classes/com/sun/org/apache/xpath/internal/XPathException.java - src/share/classes/com/sun/org/apache/xpath/internal/XPathFactory.java - src/share/classes/com/sun/org/apache/xpath/internal/XPathProcessorException.java - src/share/classes/com/sun/org/apache/xpath/internal/XPathVisitable.java - src/share/classes/com/sun/org/apache/xpath/internal/XPathVisitor.java - src/share/classes/com/sun/org/apache/xpath/internal/axes/AttributeIterator.java - src/share/classes/com/sun/org/apache/xpath/internal/axes/AxesWalker.java - src/share/classes/com/sun/org/apache/xpath/internal/axes/BasicTestIterator.java - src/share/classes/com/sun/org/apache/xpath/internal/axes/ChildIterator.java - src/share/classes/com/sun/org/apache/xpath/internal/axes/ChildTestIterator.java - src/share/classes/com/sun/org/apache/xpath/internal/axes/ContextNodeList.java - src/share/classes/com/sun/org/apache/xpath/internal/axes/DescendantIterator.java - src/share/classes/com/sun/org/apache/xpath/internal/axes/FilterExprIterator.java - src/share/classes/com/sun/org/apache/xpath/internal/axes/FilterExprIteratorSimple.java - src/share/classes/com/sun/org/apache/xpath/internal/axes/FilterExprWalker.java - src/share/classes/com/sun/org/apache/xpath/internal/axes/HasPositionalPredChecker.java - src/share/classes/com/sun/org/apache/xpath/internal/axes/IteratorPool.java - src/share/classes/com/sun/org/apache/xpath/internal/axes/LocPathIterator.java - src/share/classes/com/sun/org/apache/xpath/internal/axes/MatchPatternIterator.java - src/share/classes/com/sun/org/apache/xpath/internal/axes/NodeSequence.java - src/share/classes/com/sun/org/apache/xpath/internal/axes/OneStepIterator.java - src/share/classes/com/sun/org/apache/xpath/internal/axes/OneStepIteratorForward.java - src/share/classes/com/sun/org/apache/xpath/internal/axes/PathComponent.java - src/share/classes/com/sun/org/apache/xpath/internal/axes/PredicatedNodeTest.java - src/share/classes/com/sun/org/apache/xpath/internal/axes/RTFIterator.java - src/share/classes/com/sun/org/apache/xpath/internal/axes/ReverseAxesWalker.java - src/share/classes/com/sun/org/apache/xpath/internal/axes/SelfIteratorNoPredicate.java - src/share/classes/com/sun/org/apache/xpath/internal/axes/SubContextList.java - src/share/classes/com/sun/org/apache/xpath/internal/axes/UnionChildIterator.java - src/share/classes/com/sun/org/apache/xpath/internal/axes/UnionPathIterator.java - src/share/classes/com/sun/org/apache/xpath/internal/axes/WalkerFactory.java - src/share/classes/com/sun/org/apache/xpath/internal/axes/WalkingIterator.java - src/share/classes/com/sun/org/apache/xpath/internal/axes/WalkingIteratorSorted.java - src/share/classes/com/sun/org/apache/xpath/internal/axes/package.html - src/share/classes/com/sun/org/apache/xpath/internal/compiler/Compiler.java - src/share/classes/com/sun/org/apache/xpath/internal/compiler/FuncLoader.java - src/share/classes/com/sun/org/apache/xpath/internal/compiler/FunctionTable.java - src/share/classes/com/sun/org/apache/xpath/internal/compiler/Keywords.java - src/share/classes/com/sun/org/apache/xpath/internal/compiler/Lexer.java - src/share/classes/com/sun/org/apache/xpath/internal/compiler/ObjectFactory.java - src/share/classes/com/sun/org/apache/xpath/internal/compiler/OpCodes.java - src/share/classes/com/sun/org/apache/xpath/internal/compiler/OpMap.java - src/share/classes/com/sun/org/apache/xpath/internal/compiler/OpMapVector.java - src/share/classes/com/sun/org/apache/xpath/internal/compiler/PsuedoNames.java - src/share/classes/com/sun/org/apache/xpath/internal/compiler/SecuritySupport.java - src/share/classes/com/sun/org/apache/xpath/internal/compiler/SecuritySupport12.java - src/share/classes/com/sun/org/apache/xpath/internal/compiler/XPathDumper.java - src/share/classes/com/sun/org/apache/xpath/internal/compiler/XPathParser.java - src/share/classes/com/sun/org/apache/xpath/internal/compiler/package.html - src/share/classes/com/sun/org/apache/xpath/internal/domapi/XPathEvaluatorImpl.java - src/share/classes/com/sun/org/apache/xpath/internal/domapi/XPathExpressionImpl.java - src/share/classes/com/sun/org/apache/xpath/internal/domapi/XPathNSResolverImpl.java - src/share/classes/com/sun/org/apache/xpath/internal/domapi/XPathNamespaceImpl.java - src/share/classes/com/sun/org/apache/xpath/internal/domapi/XPathResultImpl.java - src/share/classes/com/sun/org/apache/xpath/internal/domapi/XPathStylesheetDOM3Exception.java - src/share/classes/com/sun/org/apache/xpath/internal/domapi/package.html - src/share/classes/com/sun/org/apache/xpath/internal/functions/FuncBoolean.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/FuncCeiling.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/FuncConcat.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/FuncContains.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/FuncCount.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/FuncCurrent.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/FuncDoclocation.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/FuncExtElementAvailable.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/FuncExtFunction.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/FuncExtFunctionAvailable.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/FuncFalse.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/FuncFloor.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/FuncGenerateId.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/FuncId.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/FuncLang.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/FuncLast.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/FuncLocalPart.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/FuncNamespace.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/FuncNormalizeSpace.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/FuncNot.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/FuncNumber.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/FuncPosition.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/FuncQname.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/FuncRound.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/FuncStartsWith.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/FuncString.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/FuncStringLength.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/FuncSubstring.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/FuncSubstringAfter.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/FuncSubstringBefore.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/FuncSum.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/FuncSystemProperty.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/FuncTranslate.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/FuncTrue.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/FuncUnparsedEntityURI.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/Function.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/Function2Args.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/Function3Args.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/FunctionDef1Arg.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/FunctionMultiArgs.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/FunctionOneArg.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/ObjectFactory.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/SecuritySupport.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/SecuritySupport12.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/WrongNumberArgsException.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/package.html - src/share/classes/com/sun/org/apache/xpath/internal/jaxp/JAXPExtensionsProvider.java - src/share/classes/com/sun/org/apache/xpath/internal/jaxp/JAXPPrefixResolver.java - src/share/classes/com/sun/org/apache/xpath/internal/jaxp/JAXPVariableStack.java - src/share/classes/com/sun/org/apache/xpath/internal/jaxp/XPathExpressionImpl.java - src/share/classes/com/sun/org/apache/xpath/internal/jaxp/XPathFactoryImpl.java - src/share/classes/com/sun/org/apache/xpath/internal/jaxp/XPathImpl.java - src/share/classes/com/sun/org/apache/xpath/internal/objects/DTMXRTreeFrag.java - src/share/classes/com/sun/org/apache/xpath/internal/objects/XBoolean.java - src/share/classes/com/sun/org/apache/xpath/internal/objects/XBooleanStatic.java - src/share/classes/com/sun/org/apache/xpath/internal/objects/XMLStringFactoryImpl.java - src/share/classes/com/sun/org/apache/xpath/internal/objects/XNodeSet.java - src/share/classes/com/sun/org/apache/xpath/internal/objects/XNodeSetForDOM.java - src/share/classes/com/sun/org/apache/xpath/internal/objects/XNull.java - src/share/classes/com/sun/org/apache/xpath/internal/objects/XNumber.java - src/share/classes/com/sun/org/apache/xpath/internal/objects/XObject.java - src/share/classes/com/sun/org/apache/xpath/internal/objects/XObjectFactory.java - src/share/classes/com/sun/org/apache/xpath/internal/objects/XRTreeFrag.java - src/share/classes/com/sun/org/apache/xpath/internal/objects/XRTreeFragSelectWrapper.java - src/share/classes/com/sun/org/apache/xpath/internal/objects/XString.java - src/share/classes/com/sun/org/apache/xpath/internal/objects/XStringForChars.java - src/share/classes/com/sun/org/apache/xpath/internal/objects/XStringForFSB.java - src/share/classes/com/sun/org/apache/xpath/internal/objects/package.html - src/share/classes/com/sun/org/apache/xpath/internal/operations/And.java - src/share/classes/com/sun/org/apache/xpath/internal/operations/Bool.java - src/share/classes/com/sun/org/apache/xpath/internal/operations/Div.java - src/share/classes/com/sun/org/apache/xpath/internal/operations/Equals.java - src/share/classes/com/sun/org/apache/xpath/internal/operations/Gt.java - src/share/classes/com/sun/org/apache/xpath/internal/operations/Gte.java - src/share/classes/com/sun/org/apache/xpath/internal/operations/Lt.java - src/share/classes/com/sun/org/apache/xpath/internal/operations/Lte.java - src/share/classes/com/sun/org/apache/xpath/internal/operations/Minus.java - src/share/classes/com/sun/org/apache/xpath/internal/operations/Mod.java - src/share/classes/com/sun/org/apache/xpath/internal/operations/Mult.java - src/share/classes/com/sun/org/apache/xpath/internal/operations/Neg.java - src/share/classes/com/sun/org/apache/xpath/internal/operations/NotEquals.java - src/share/classes/com/sun/org/apache/xpath/internal/operations/Number.java - src/share/classes/com/sun/org/apache/xpath/internal/operations/Operation.java - src/share/classes/com/sun/org/apache/xpath/internal/operations/Or.java - src/share/classes/com/sun/org/apache/xpath/internal/operations/Plus.java - src/share/classes/com/sun/org/apache/xpath/internal/operations/Quo.java - src/share/classes/com/sun/org/apache/xpath/internal/operations/String.java - src/share/classes/com/sun/org/apache/xpath/internal/operations/UnaryOperation.java - src/share/classes/com/sun/org/apache/xpath/internal/operations/Variable.java - src/share/classes/com/sun/org/apache/xpath/internal/operations/VariableSafeAbsRef.java - src/share/classes/com/sun/org/apache/xpath/internal/operations/package.html - src/share/classes/com/sun/org/apache/xpath/internal/package.html - src/share/classes/com/sun/org/apache/xpath/internal/patterns/ContextMatchStepPattern.java - src/share/classes/com/sun/org/apache/xpath/internal/patterns/FunctionPattern.java - src/share/classes/com/sun/org/apache/xpath/internal/patterns/NodeTest.java - src/share/classes/com/sun/org/apache/xpath/internal/patterns/NodeTestFilter.java - src/share/classes/com/sun/org/apache/xpath/internal/patterns/StepPattern.java - src/share/classes/com/sun/org/apache/xpath/internal/patterns/UnionPattern.java - src/share/classes/com/sun/org/apache/xpath/internal/patterns/package.html - src/share/classes/com/sun/org/apache/xpath/internal/res/XPATHErrorResources.java - src/share/classes/com/sun/org/apache/xpath/internal/res/XPATHErrorResources_de.java - src/share/classes/com/sun/org/apache/xpath/internal/res/XPATHErrorResources_en.java - src/share/classes/com/sun/org/apache/xpath/internal/res/XPATHErrorResources_es.java - src/share/classes/com/sun/org/apache/xpath/internal/res/XPATHErrorResources_fr.java - src/share/classes/com/sun/org/apache/xpath/internal/res/XPATHErrorResources_it.java - src/share/classes/com/sun/org/apache/xpath/internal/res/XPATHErrorResources_ja.java - src/share/classes/com/sun/org/apache/xpath/internal/res/XPATHErrorResources_ko.java - src/share/classes/com/sun/org/apache/xpath/internal/res/XPATHErrorResources_pt_BR.java - src/share/classes/com/sun/org/apache/xpath/internal/res/XPATHErrorResources_sv.java - src/share/classes/com/sun/org/apache/xpath/internal/res/XPATHErrorResources_zh_CN.java - src/share/classes/com/sun/org/apache/xpath/internal/res/XPATHErrorResources_zh_TW.java - src/share/classes/com/sun/org/apache/xpath/internal/res/XPATHMessages.java - src/share/classes/com/sun/org/apache/xpath/internal/res/package.html - src/share/classes/com/sun/xml/internal/stream/Entity.java - src/share/classes/com/sun/xml/internal/stream/EventFilterSupport.java - src/share/classes/com/sun/xml/internal/stream/StaxEntityResolverWrapper.java - src/share/classes/com/sun/xml/internal/stream/StaxErrorReporter.java - src/share/classes/com/sun/xml/internal/stream/StaxXMLInputSource.java - src/share/classes/com/sun/xml/internal/stream/XMLBufferListener.java - src/share/classes/com/sun/xml/internal/stream/XMLEntityReader.java - src/share/classes/com/sun/xml/internal/stream/XMLEntityStorage.java - src/share/classes/com/sun/xml/internal/stream/XMLEventReaderImpl.java - src/share/classes/com/sun/xml/internal/stream/XMLInputFactoryImpl.java - src/share/classes/com/sun/xml/internal/stream/XMLOutputFactoryImpl.java - src/share/classes/com/sun/xml/internal/stream/dtd/DTDGrammarUtil.java - src/share/classes/com/sun/xml/internal/stream/dtd/nonvalidating/DTDGrammar.java - src/share/classes/com/sun/xml/internal/stream/dtd/nonvalidating/XMLAttributeDecl.java - src/share/classes/com/sun/xml/internal/stream/dtd/nonvalidating/XMLElementDecl.java - src/share/classes/com/sun/xml/internal/stream/dtd/nonvalidating/XMLNotationDecl.java - src/share/classes/com/sun/xml/internal/stream/dtd/nonvalidating/XMLSimpleType.java - src/share/classes/com/sun/xml/internal/stream/events/AttributeImpl.java - src/share/classes/com/sun/xml/internal/stream/events/CharacterEvent.java - src/share/classes/com/sun/xml/internal/stream/events/CommentEvent.java - src/share/classes/com/sun/xml/internal/stream/events/DTDEvent.java - src/share/classes/com/sun/xml/internal/stream/events/DummyEvent.java - src/share/classes/com/sun/xml/internal/stream/events/EndDocumentEvent.java - src/share/classes/com/sun/xml/internal/stream/events/EndElementEvent.java - src/share/classes/com/sun/xml/internal/stream/events/EntityDeclarationImpl.java - src/share/classes/com/sun/xml/internal/stream/events/EntityReferenceEvent.java - src/share/classes/com/sun/xml/internal/stream/events/LocationImpl.java - src/share/classes/com/sun/xml/internal/stream/events/NamedEvent.java - src/share/classes/com/sun/xml/internal/stream/events/NamespaceImpl.java - src/share/classes/com/sun/xml/internal/stream/events/NotationDeclarationImpl.java - src/share/classes/com/sun/xml/internal/stream/events/ProcessingInstructionEvent.java - src/share/classes/com/sun/xml/internal/stream/events/StartDocumentEvent.java - src/share/classes/com/sun/xml/internal/stream/events/StartElementEvent.java - src/share/classes/com/sun/xml/internal/stream/events/XMLEventAllocatorImpl.java - src/share/classes/com/sun/xml/internal/stream/events/XMLEventFactoryImpl.java - src/share/classes/com/sun/xml/internal/stream/javax.xml.stream.XMLEventFactory - src/share/classes/com/sun/xml/internal/stream/javax.xml.stream.XMLInputFactory - src/share/classes/com/sun/xml/internal/stream/javax.xml.stream.XMLOutputFactory - src/share/classes/com/sun/xml/internal/stream/util/BufferAllocator.java - src/share/classes/com/sun/xml/internal/stream/util/ReadOnlyIterator.java - src/share/classes/com/sun/xml/internal/stream/util/ThreadLocalBufferAllocator.java - src/share/classes/com/sun/xml/internal/stream/writers/UTF8OutputStreamWriter.java - src/share/classes/com/sun/xml/internal/stream/writers/WriterUtility.java - src/share/classes/com/sun/xml/internal/stream/writers/XMLDOMWriterImpl.java - src/share/classes/com/sun/xml/internal/stream/writers/XMLEventWriterImpl.java - src/share/classes/com/sun/xml/internal/stream/writers/XMLOutputSource.java - src/share/classes/com/sun/xml/internal/stream/writers/XMLStreamWriterImpl.java - src/share/classes/com/sun/xml/internal/stream/writers/XMLWriter.java - src/share/classes/javax/xml/XMLConstants.java - src/share/classes/javax/xml/datatype/DatatypeConfigurationException.java - src/share/classes/javax/xml/datatype/DatatypeConstants.java - src/share/classes/javax/xml/datatype/DatatypeFactory.java - src/share/classes/javax/xml/datatype/Duration.java - src/share/classes/javax/xml/datatype/FactoryFinder.java - src/share/classes/javax/xml/datatype/SecuritySupport.java - src/share/classes/javax/xml/datatype/XMLGregorianCalendar.java - src/share/classes/javax/xml/datatype/package.html - src/share/classes/javax/xml/namespace/NamespaceContext.java - src/share/classes/javax/xml/namespace/QName.java - src/share/classes/javax/xml/namespace/package.html - src/share/classes/javax/xml/parsers/DocumentBuilder.java - src/share/classes/javax/xml/parsers/DocumentBuilderFactory.java - src/share/classes/javax/xml/parsers/FactoryConfigurationError.java - src/share/classes/javax/xml/parsers/FactoryFinder.java - src/share/classes/javax/xml/parsers/ParserConfigurationException.java - src/share/classes/javax/xml/parsers/SAXParser.java - src/share/classes/javax/xml/parsers/SAXParserFactory.java - src/share/classes/javax/xml/parsers/SecuritySupport.java - src/share/classes/javax/xml/parsers/package.html - src/share/classes/javax/xml/stream/EventFilter.java - src/share/classes/javax/xml/stream/FactoryConfigurationError.java - src/share/classes/javax/xml/stream/FactoryFinder.java - src/share/classes/javax/xml/stream/Location.java - src/share/classes/javax/xml/stream/SecuritySupport.java - src/share/classes/javax/xml/stream/StreamFilter.java - src/share/classes/javax/xml/stream/XMLEventFactory.java - src/share/classes/javax/xml/stream/XMLEventReader.java - src/share/classes/javax/xml/stream/XMLEventWriter.java - src/share/classes/javax/xml/stream/XMLInputFactory.java - src/share/classes/javax/xml/stream/XMLOutputFactory.java - src/share/classes/javax/xml/stream/XMLReporter.java - src/share/classes/javax/xml/stream/XMLResolver.java - src/share/classes/javax/xml/stream/XMLStreamConstants.java - src/share/classes/javax/xml/stream/XMLStreamException.java - src/share/classes/javax/xml/stream/XMLStreamReader.java - src/share/classes/javax/xml/stream/XMLStreamWriter.java - src/share/classes/javax/xml/stream/events/Attribute.java - src/share/classes/javax/xml/stream/events/Characters.java - src/share/classes/javax/xml/stream/events/Comment.java - src/share/classes/javax/xml/stream/events/DTD.java - src/share/classes/javax/xml/stream/events/EndDocument.java - src/share/classes/javax/xml/stream/events/EndElement.java - src/share/classes/javax/xml/stream/events/EntityDeclaration.java - src/share/classes/javax/xml/stream/events/EntityReference.java - src/share/classes/javax/xml/stream/events/Namespace.java - src/share/classes/javax/xml/stream/events/NotationDeclaration.java - src/share/classes/javax/xml/stream/events/ProcessingInstruction.java - src/share/classes/javax/xml/stream/events/StartDocument.java - src/share/classes/javax/xml/stream/events/StartElement.java - src/share/classes/javax/xml/stream/events/XMLEvent.java - src/share/classes/javax/xml/stream/util/EventReaderDelegate.java - src/share/classes/javax/xml/stream/util/StreamReaderDelegate.java - src/share/classes/javax/xml/stream/util/XMLEventAllocator.java - src/share/classes/javax/xml/stream/util/XMLEventConsumer.java - src/share/classes/javax/xml/transform/ErrorListener.java - src/share/classes/javax/xml/transform/FactoryFinder.java - src/share/classes/javax/xml/transform/OutputKeys.java - src/share/classes/javax/xml/transform/Result.java - src/share/classes/javax/xml/transform/SecuritySupport.java - src/share/classes/javax/xml/transform/Source.java - src/share/classes/javax/xml/transform/SourceLocator.java - src/share/classes/javax/xml/transform/Templates.java - src/share/classes/javax/xml/transform/Transformer.java - src/share/classes/javax/xml/transform/TransformerConfigurationException.java - src/share/classes/javax/xml/transform/TransformerException.java - src/share/classes/javax/xml/transform/TransformerFactory.java - src/share/classes/javax/xml/transform/TransformerFactoryConfigurationError.java - src/share/classes/javax/xml/transform/URIResolver.java - src/share/classes/javax/xml/transform/dom/DOMLocator.java - src/share/classes/javax/xml/transform/dom/DOMResult.java - src/share/classes/javax/xml/transform/dom/DOMSource.java - src/share/classes/javax/xml/transform/dom/package.html - src/share/classes/javax/xml/transform/overview.html - src/share/classes/javax/xml/transform/package.html - src/share/classes/javax/xml/transform/sax/SAXResult.java - src/share/classes/javax/xml/transform/sax/SAXSource.java - src/share/classes/javax/xml/transform/sax/SAXTransformerFactory.java - src/share/classes/javax/xml/transform/sax/TemplatesHandler.java - src/share/classes/javax/xml/transform/sax/TransformerHandler.java - src/share/classes/javax/xml/transform/sax/package.html - src/share/classes/javax/xml/transform/stax/StAXResult.java - src/share/classes/javax/xml/transform/stax/StAXSource.java - src/share/classes/javax/xml/transform/stax/package.html - src/share/classes/javax/xml/transform/stream/StreamResult.java - src/share/classes/javax/xml/transform/stream/StreamSource.java - src/share/classes/javax/xml/transform/stream/package.html - src/share/classes/javax/xml/validation/Schema.java - src/share/classes/javax/xml/validation/SchemaFactory.java - src/share/classes/javax/xml/validation/SchemaFactoryFinder.java - src/share/classes/javax/xml/validation/SchemaFactoryLoader.java - src/share/classes/javax/xml/validation/SecuritySupport.java - src/share/classes/javax/xml/validation/TypeInfoProvider.java - src/share/classes/javax/xml/validation/Validator.java - src/share/classes/javax/xml/validation/ValidatorHandler.java - src/share/classes/javax/xml/validation/package.html - src/share/classes/javax/xml/xpath/SecuritySupport.java - src/share/classes/javax/xml/xpath/XPath.java - src/share/classes/javax/xml/xpath/XPathConstants.java - src/share/classes/javax/xml/xpath/XPathException.java - src/share/classes/javax/xml/xpath/XPathExpression.java - src/share/classes/javax/xml/xpath/XPathExpressionException.java - src/share/classes/javax/xml/xpath/XPathFactory.java - src/share/classes/javax/xml/xpath/XPathFactoryConfigurationException.java - src/share/classes/javax/xml/xpath/XPathFactoryFinder.java - src/share/classes/javax/xml/xpath/XPathFunction.java - src/share/classes/javax/xml/xpath/XPathFunctionException.java - src/share/classes/javax/xml/xpath/XPathFunctionResolver.java - src/share/classes/javax/xml/xpath/XPathVariableResolver.java - src/share/classes/javax/xml/xpath/package.html - src/share/classes/org/w3c/dom/Attr.java - src/share/classes/org/w3c/dom/CDATASection.java - src/share/classes/org/w3c/dom/CharacterData.java - src/share/classes/org/w3c/dom/Comment.java - src/share/classes/org/w3c/dom/DOMConfiguration.java - src/share/classes/org/w3c/dom/DOMError.java - src/share/classes/org/w3c/dom/DOMErrorHandler.java - src/share/classes/org/w3c/dom/DOMException.java - src/share/classes/org/w3c/dom/DOMImplementation.java - src/share/classes/org/w3c/dom/DOMImplementationList.java - src/share/classes/org/w3c/dom/DOMImplementationSource.java - src/share/classes/org/w3c/dom/DOMLocator.java - src/share/classes/org/w3c/dom/DOMStringList.java - src/share/classes/org/w3c/dom/Document.java - src/share/classes/org/w3c/dom/DocumentFragment.java - src/share/classes/org/w3c/dom/DocumentType.java - src/share/classes/org/w3c/dom/Element.java - src/share/classes/org/w3c/dom/Entity.java - src/share/classes/org/w3c/dom/EntityReference.java - src/share/classes/org/w3c/dom/NameList.java - src/share/classes/org/w3c/dom/NamedNodeMap.java - src/share/classes/org/w3c/dom/Node.java - src/share/classes/org/w3c/dom/NodeList.java - src/share/classes/org/w3c/dom/Notation.java - src/share/classes/org/w3c/dom/ProcessingInstruction.java - src/share/classes/org/w3c/dom/Text.java - src/share/classes/org/w3c/dom/TypeInfo.java - src/share/classes/org/w3c/dom/UserDataHandler.java - src/share/classes/org/w3c/dom/bootstrap/DOMImplementationRegistry.java - src/share/classes/org/w3c/dom/css/CSS2Properties.java - src/share/classes/org/w3c/dom/css/CSSCharsetRule.java - src/share/classes/org/w3c/dom/css/CSSFontFaceRule.java - src/share/classes/org/w3c/dom/css/CSSImportRule.java - src/share/classes/org/w3c/dom/css/CSSMediaRule.java - src/share/classes/org/w3c/dom/css/CSSPageRule.java - src/share/classes/org/w3c/dom/css/CSSPrimitiveValue.java - src/share/classes/org/w3c/dom/css/CSSRule.java - src/share/classes/org/w3c/dom/css/CSSRuleList.java - src/share/classes/org/w3c/dom/css/CSSStyleDeclaration.java - src/share/classes/org/w3c/dom/css/CSSStyleRule.java - src/share/classes/org/w3c/dom/css/CSSStyleSheet.java - src/share/classes/org/w3c/dom/css/CSSUnknownRule.java - src/share/classes/org/w3c/dom/css/CSSValue.java - src/share/classes/org/w3c/dom/css/CSSValueList.java - src/share/classes/org/w3c/dom/css/Counter.java - src/share/classes/org/w3c/dom/css/DOMImplementationCSS.java - src/share/classes/org/w3c/dom/css/DocumentCSS.java - src/share/classes/org/w3c/dom/css/ElementCSSInlineStyle.java - src/share/classes/org/w3c/dom/css/RGBColor.java - src/share/classes/org/w3c/dom/css/Rect.java - src/share/classes/org/w3c/dom/css/ViewCSS.java - src/share/classes/org/w3c/dom/events/DocumentEvent.java - src/share/classes/org/w3c/dom/events/Event.java - src/share/classes/org/w3c/dom/events/EventException.java - src/share/classes/org/w3c/dom/events/EventListener.java - src/share/classes/org/w3c/dom/events/EventTarget.java - src/share/classes/org/w3c/dom/events/MouseEvent.java - src/share/classes/org/w3c/dom/events/MutationEvent.java - src/share/classes/org/w3c/dom/events/UIEvent.java - src/share/classes/org/w3c/dom/html/HTMLAnchorElement.java - src/share/classes/org/w3c/dom/html/HTMLAppletElement.java - src/share/classes/org/w3c/dom/html/HTMLAreaElement.java - src/share/classes/org/w3c/dom/html/HTMLBRElement.java - src/share/classes/org/w3c/dom/html/HTMLBaseElement.java - src/share/classes/org/w3c/dom/html/HTMLBaseFontElement.java - src/share/classes/org/w3c/dom/html/HTMLBodyElement.java - src/share/classes/org/w3c/dom/html/HTMLButtonElement.java - src/share/classes/org/w3c/dom/html/HTMLCollection.java - src/share/classes/org/w3c/dom/html/HTMLDListElement.java - src/share/classes/org/w3c/dom/html/HTMLDOMImplementation.java - src/share/classes/org/w3c/dom/html/HTMLDirectoryElement.java - src/share/classes/org/w3c/dom/html/HTMLDivElement.java - src/share/classes/org/w3c/dom/html/HTMLDocument.java - src/share/classes/org/w3c/dom/html/HTMLElement.java - src/share/classes/org/w3c/dom/html/HTMLFieldSetElement.java - src/share/classes/org/w3c/dom/html/HTMLFontElement.java - src/share/classes/org/w3c/dom/html/HTMLFormElement.java - src/share/classes/org/w3c/dom/html/HTMLFrameElement.java - src/share/classes/org/w3c/dom/html/HTMLFrameSetElement.java - src/share/classes/org/w3c/dom/html/HTMLHRElement.java - src/share/classes/org/w3c/dom/html/HTMLHeadElement.java - src/share/classes/org/w3c/dom/html/HTMLHeadingElement.java - src/share/classes/org/w3c/dom/html/HTMLHtmlElement.java - src/share/classes/org/w3c/dom/html/HTMLIFrameElement.java - src/share/classes/org/w3c/dom/html/HTMLImageElement.java - src/share/classes/org/w3c/dom/html/HTMLInputElement.java - src/share/classes/org/w3c/dom/html/HTMLIsIndexElement.java - src/share/classes/org/w3c/dom/html/HTMLLIElement.java - src/share/classes/org/w3c/dom/html/HTMLLabelElement.java - src/share/classes/org/w3c/dom/html/HTMLLegendElement.java - src/share/classes/org/w3c/dom/html/HTMLLinkElement.java - src/share/classes/org/w3c/dom/html/HTMLMapElement.java - src/share/classes/org/w3c/dom/html/HTMLMenuElement.java - src/share/classes/org/w3c/dom/html/HTMLMetaElement.java - src/share/classes/org/w3c/dom/html/HTMLModElement.java - src/share/classes/org/w3c/dom/html/HTMLOListElement.java - src/share/classes/org/w3c/dom/html/HTMLObjectElement.java - src/share/classes/org/w3c/dom/html/HTMLOptGroupElement.java - src/share/classes/org/w3c/dom/html/HTMLOptionElement.java - src/share/classes/org/w3c/dom/html/HTMLParagraphElement.java - src/share/classes/org/w3c/dom/html/HTMLParamElement.java - src/share/classes/org/w3c/dom/html/HTMLPreElement.java - src/share/classes/org/w3c/dom/html/HTMLQuoteElement.java - src/share/classes/org/w3c/dom/html/HTMLScriptElement.java - src/share/classes/org/w3c/dom/html/HTMLSelectElement.java - src/share/classes/org/w3c/dom/html/HTMLStyleElement.java - src/share/classes/org/w3c/dom/html/HTMLTableCaptionElement.java - src/share/classes/org/w3c/dom/html/HTMLTableCellElement.java - src/share/classes/org/w3c/dom/html/HTMLTableColElement.java - src/share/classes/org/w3c/dom/html/HTMLTableElement.java - src/share/classes/org/w3c/dom/html/HTMLTableRowElement.java - src/share/classes/org/w3c/dom/html/HTMLTableSectionElement.java - src/share/classes/org/w3c/dom/html/HTMLTextAreaElement.java - src/share/classes/org/w3c/dom/html/HTMLTitleElement.java - src/share/classes/org/w3c/dom/html/HTMLUListElement.java - src/share/classes/org/w3c/dom/ls/DOMImplementationLS.java - src/share/classes/org/w3c/dom/ls/LSException.java - src/share/classes/org/w3c/dom/ls/LSInput.java - src/share/classes/org/w3c/dom/ls/LSLoadEvent.java - src/share/classes/org/w3c/dom/ls/LSOutput.java - src/share/classes/org/w3c/dom/ls/LSParser.java - src/share/classes/org/w3c/dom/ls/LSParserFilter.java - src/share/classes/org/w3c/dom/ls/LSProgressEvent.java - src/share/classes/org/w3c/dom/ls/LSResourceResolver.java - src/share/classes/org/w3c/dom/ls/LSSerializer.java - src/share/classes/org/w3c/dom/ls/LSSerializerFilter.java - src/share/classes/org/w3c/dom/package.html - src/share/classes/org/w3c/dom/ranges/DocumentRange.java - src/share/classes/org/w3c/dom/ranges/Range.java - src/share/classes/org/w3c/dom/ranges/RangeException.java - src/share/classes/org/w3c/dom/ranges/package.html - src/share/classes/org/w3c/dom/stylesheets/DocumentStyle.java - src/share/classes/org/w3c/dom/stylesheets/LinkStyle.java - src/share/classes/org/w3c/dom/stylesheets/MediaList.java - src/share/classes/org/w3c/dom/stylesheets/StyleSheet.java - src/share/classes/org/w3c/dom/stylesheets/StyleSheetList.java - src/share/classes/org/w3c/dom/traversal/DocumentTraversal.java - src/share/classes/org/w3c/dom/traversal/NodeFilter.java - src/share/classes/org/w3c/dom/traversal/NodeIterator.java - src/share/classes/org/w3c/dom/traversal/TreeWalker.java - src/share/classes/org/w3c/dom/views/AbstractView.java - src/share/classes/org/w3c/dom/views/DocumentView.java - src/share/classes/org/w3c/dom/xpath/COPYRIGHT.html - src/share/classes/org/w3c/dom/xpath/XPathEvaluator.java - src/share/classes/org/w3c/dom/xpath/XPathException.java - src/share/classes/org/w3c/dom/xpath/XPathExpression.java - src/share/classes/org/w3c/dom/xpath/XPathNSResolver.java - src/share/classes/org/w3c/dom/xpath/XPathNamespace.java - src/share/classes/org/w3c/dom/xpath/XPathResult.java - src/share/classes/org/xml/sax/AttributeList.java - src/share/classes/org/xml/sax/Attributes.java - src/share/classes/org/xml/sax/COPYING - src/share/classes/org/xml/sax/COPYING.txt - src/share/classes/org/xml/sax/ContentHandler.java - src/share/classes/org/xml/sax/DTDHandler.java - src/share/classes/org/xml/sax/DocumentHandler.java - src/share/classes/org/xml/sax/EntityResolver.java - src/share/classes/org/xml/sax/ErrorHandler.java - src/share/classes/org/xml/sax/HandlerBase.java - src/share/classes/org/xml/sax/InputSource.java - src/share/classes/org/xml/sax/Locator.java - src/share/classes/org/xml/sax/Parser.java - src/share/classes/org/xml/sax/SAXException.java - src/share/classes/org/xml/sax/SAXNotRecognizedException.java - src/share/classes/org/xml/sax/SAXNotSupportedException.java - src/share/classes/org/xml/sax/SAXParseException.java - src/share/classes/org/xml/sax/XMLFilter.java - src/share/classes/org/xml/sax/XMLReader.java - src/share/classes/org/xml/sax/ext/Attributes2.java - src/share/classes/org/xml/sax/ext/Attributes2Impl.java - src/share/classes/org/xml/sax/ext/DeclHandler.java - src/share/classes/org/xml/sax/ext/DefaultHandler2.java - src/share/classes/org/xml/sax/ext/EntityResolver2.java - src/share/classes/org/xml/sax/ext/LexicalHandler.java - src/share/classes/org/xml/sax/ext/Locator2.java - src/share/classes/org/xml/sax/ext/Locator2Impl.java - src/share/classes/org/xml/sax/ext/package.html - src/share/classes/org/xml/sax/helpers/AttributeListImpl.java - src/share/classes/org/xml/sax/helpers/AttributesImpl.java - src/share/classes/org/xml/sax/helpers/DefaultHandler.java - src/share/classes/org/xml/sax/helpers/LocatorImpl.java - src/share/classes/org/xml/sax/helpers/NamespaceSupport.java - src/share/classes/org/xml/sax/helpers/NewInstance.java - src/share/classes/org/xml/sax/helpers/ParserAdapter.java - src/share/classes/org/xml/sax/helpers/ParserFactory.java - src/share/classes/org/xml/sax/helpers/XMLFilterImpl.java - src/share/classes/org/xml/sax/helpers/XMLReaderAdapter.java - src/share/classes/org/xml/sax/helpers/XMLReaderFactory.java - src/share/classes/org/xml/sax/helpers/package.html - src/share/classes/org/xml/sax/package.html Changeset: cfd288fe1d3e Author: lana Date: 2012-04-23 16:55 -0700 URL: http://hg.openjdk.java.net/jdk8/tl/jaxp/rev/cfd288fe1d3e Merge - src/share/classes/com/sun/java_cup/internal/runtime/Scanner.java - src/share/classes/com/sun/java_cup/internal/runtime/Symbol.java - src/share/classes/com/sun/java_cup/internal/runtime/lr_parser.java - src/share/classes/com/sun/java_cup/internal/runtime/virtual_parse_stack.java - src/share/classes/com/sun/org/apache/bcel/internal/Constants.java - src/share/classes/com/sun/org/apache/bcel/internal/ExceptionConstants.java - src/share/classes/com/sun/org/apache/bcel/internal/Repository.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/AccessFlags.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/Attribute.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/AttributeReader.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/ClassFormatException.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/ClassParser.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/Code.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/CodeException.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/Constant.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/ConstantCP.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/ConstantClass.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/ConstantDouble.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/ConstantFieldref.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/ConstantFloat.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/ConstantInteger.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/ConstantInterfaceMethodref.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/ConstantLong.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/ConstantMethodref.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/ConstantNameAndType.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/ConstantObject.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/ConstantPool.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/ConstantString.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/ConstantUtf8.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/ConstantValue.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/Deprecated.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/DescendingVisitor.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/EmptyVisitor.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/ExceptionTable.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/Field.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/FieldOrMethod.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/InnerClass.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/InnerClasses.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/JavaClass.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/LineNumber.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/LineNumberTable.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/LocalVariable.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/LocalVariableTable.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/Method.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/Node.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/PMGClass.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/Signature.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/SourceFile.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/StackMap.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/StackMapEntry.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/StackMapType.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/Synthetic.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/Unknown.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/Utility.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/Visitor.java - src/share/classes/com/sun/org/apache/bcel/internal/classfile/package.html - src/share/classes/com/sun/org/apache/bcel/internal/generic/AALOAD.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/AASTORE.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/ACONST_NULL.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/ALOAD.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/ANEWARRAY.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/ARETURN.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/ARRAYLENGTH.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/ASTORE.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/ATHROW.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/AllocationInstruction.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/ArithmeticInstruction.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/ArrayInstruction.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/ArrayType.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/BALOAD.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/BASTORE.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/BIPUSH.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/BREAKPOINT.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/BasicType.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/BranchHandle.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/BranchInstruction.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/CALOAD.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/CASTORE.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/CHECKCAST.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/CPInstruction.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/ClassGen.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/ClassGenException.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/ClassObserver.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/CodeExceptionGen.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/CompoundInstruction.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/ConstantPoolGen.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/ConstantPushInstruction.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/ConversionInstruction.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/D2F.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/D2I.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/D2L.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/DADD.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/DALOAD.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/DASTORE.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/DCMPG.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/DCMPL.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/DCONST.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/DDIV.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/DLOAD.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/DMUL.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/DNEG.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/DREM.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/DRETURN.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/DSTORE.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/DSUB.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/DUP.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/DUP2.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/DUP2_X1.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/DUP2_X2.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/DUP_X1.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/DUP_X2.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/EmptyVisitor.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/ExceptionThrower.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/F2D.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/F2I.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/F2L.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/FADD.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/FALOAD.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/FASTORE.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/FCMPG.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/FCMPL.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/FCONST.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/FDIV.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/FLOAD.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/FMUL.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/FNEG.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/FREM.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/FRETURN.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/FSTORE.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/FSUB.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/FieldGen.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/FieldGenOrMethodGen.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/FieldInstruction.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/FieldObserver.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/FieldOrMethod.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/GETFIELD.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/GETSTATIC.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/GOTO.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/GOTO_W.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/GotoInstruction.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/I2B.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/I2C.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/I2D.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/I2F.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/I2L.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/I2S.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/IADD.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/IALOAD.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/IAND.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/IASTORE.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/ICONST.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/IDIV.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/IFEQ.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/IFGE.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/IFGT.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/IFLE.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/IFLT.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/IFNE.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/IFNONNULL.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/IFNULL.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/IF_ACMPEQ.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/IF_ACMPNE.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/IF_ICMPEQ.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/IF_ICMPGE.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/IF_ICMPGT.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/IF_ICMPLE.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/IF_ICMPLT.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/IF_ICMPNE.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/IINC.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/ILOAD.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/IMPDEP1.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/IMPDEP2.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/IMUL.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/INEG.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/INSTANCEOF.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/INVOKEINTERFACE.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/INVOKESPECIAL.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/INVOKESTATIC.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/INVOKEVIRTUAL.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/IOR.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/IREM.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/IRETURN.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/ISHL.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/ISHR.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/ISTORE.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/ISUB.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/IUSHR.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/IXOR.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/IfInstruction.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/IndexedInstruction.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/Instruction.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/InstructionComparator.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/InstructionConstants.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/InstructionFactory.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/InstructionHandle.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/InstructionList.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/InstructionListObserver.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/InstructionTargeter.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/InvokeInstruction.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/JSR.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/JSR_W.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/JsrInstruction.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/L2D.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/L2F.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/L2I.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/LADD.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/LALOAD.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/LAND.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/LASTORE.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/LCMP.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/LCONST.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/LDC.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/LDC2_W.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/LDC_W.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/LDIV.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/LLOAD.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/LMUL.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/LNEG.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/LOOKUPSWITCH.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/LOR.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/LREM.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/LRETURN.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/LSHL.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/LSHR.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/LSTORE.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/LSUB.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/LUSHR.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/LXOR.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/LineNumberGen.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/LoadClass.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/LoadInstruction.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/LocalVariableGen.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/LocalVariableInstruction.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/MONITORENTER.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/MONITOREXIT.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/MULTIANEWARRAY.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/MethodGen.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/MethodObserver.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/NEW.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/NEWARRAY.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/NOP.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/NamedAndTyped.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/ObjectType.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/POP.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/POP2.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/PUSH.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/PUTFIELD.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/PUTSTATIC.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/PopInstruction.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/PushInstruction.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/RET.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/RETURN.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/ReferenceType.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/ReturnInstruction.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/ReturnaddressType.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/SALOAD.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/SASTORE.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/SIPUSH.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/SWAP.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/SWITCH.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/Select.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/StackConsumer.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/StackInstruction.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/StackProducer.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/StoreInstruction.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/TABLESWITCH.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/TargetLostException.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/Type.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/TypedInstruction.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/UnconditionalBranch.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/VariableLengthInstruction.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/Visitor.java - src/share/classes/com/sun/org/apache/bcel/internal/generic/package.html - src/share/classes/com/sun/org/apache/bcel/internal/package.html - src/share/classes/com/sun/org/apache/bcel/internal/util/AttributeHTML.java - src/share/classes/com/sun/org/apache/bcel/internal/util/BCELFactory.java - src/share/classes/com/sun/org/apache/bcel/internal/util/BCELifier.java - src/share/classes/com/sun/org/apache/bcel/internal/util/ByteSequence.java - src/share/classes/com/sun/org/apache/bcel/internal/util/Class2HTML.java - src/share/classes/com/sun/org/apache/bcel/internal/util/ClassLoader.java - src/share/classes/com/sun/org/apache/bcel/internal/util/ClassLoaderRepository.java - src/share/classes/com/sun/org/apache/bcel/internal/util/ClassPath.java - src/share/classes/com/sun/org/apache/bcel/internal/util/ClassQueue.java - src/share/classes/com/sun/org/apache/bcel/internal/util/ClassSet.java - src/share/classes/com/sun/org/apache/bcel/internal/util/ClassStack.java - src/share/classes/com/sun/org/apache/bcel/internal/util/ClassVector.java - src/share/classes/com/sun/org/apache/bcel/internal/util/CodeHTML.java - src/share/classes/com/sun/org/apache/bcel/internal/util/ConstantHTML.java - src/share/classes/com/sun/org/apache/bcel/internal/util/InstructionFinder.java - src/share/classes/com/sun/org/apache/bcel/internal/util/JavaWrapper.java - src/share/classes/com/sun/org/apache/bcel/internal/util/MethodHTML.java - src/share/classes/com/sun/org/apache/bcel/internal/util/Repository.java - src/share/classes/com/sun/org/apache/bcel/internal/util/SyntheticRepository.java - src/share/classes/com/sun/org/apache/bcel/internal/util/package.html - src/share/classes/com/sun/org/apache/regexp/internal/CharacterArrayCharacterIterator.java - src/share/classes/com/sun/org/apache/regexp/internal/CharacterIterator.java - src/share/classes/com/sun/org/apache/regexp/internal/RE.java - src/share/classes/com/sun/org/apache/regexp/internal/RECompiler.java - src/share/classes/com/sun/org/apache/regexp/internal/REDebugCompiler.java - src/share/classes/com/sun/org/apache/regexp/internal/REProgram.java - src/share/classes/com/sun/org/apache/regexp/internal/RESyntaxException.java - src/share/classes/com/sun/org/apache/regexp/internal/RETest.java - src/share/classes/com/sun/org/apache/regexp/internal/REUtil.java - src/share/classes/com/sun/org/apache/regexp/internal/ReaderCharacterIterator.java - src/share/classes/com/sun/org/apache/regexp/internal/StreamCharacterIterator.java - src/share/classes/com/sun/org/apache/regexp/internal/StringCharacterIterator.java - src/share/classes/com/sun/org/apache/regexp/internal/recompile.java - src/share/classes/com/sun/org/apache/xalan/META-INF/services/javax.xml.transform.TransformerFactory - src/share/classes/com/sun/org/apache/xalan/META-INF/services/javax.xml.xpath.XPathFactory - src/share/classes/com/sun/org/apache/xalan/META-INF/services/org.apache.xml.dtm.DTMManager - src/share/classes/com/sun/org/apache/xalan/internal/Version.java - src/share/classes/com/sun/org/apache/xalan/internal/extensions/ExpressionContext.java - src/share/classes/com/sun/org/apache/xalan/internal/extensions/package.html - src/share/classes/com/sun/org/apache/xalan/internal/lib/ExsltBase.java - src/share/classes/com/sun/org/apache/xalan/internal/lib/ExsltCommon.java - src/share/classes/com/sun/org/apache/xalan/internal/lib/ExsltDatetime.java - src/share/classes/com/sun/org/apache/xalan/internal/lib/ExsltDynamic.java - src/share/classes/com/sun/org/apache/xalan/internal/lib/ExsltMath.java - src/share/classes/com/sun/org/apache/xalan/internal/lib/ExsltSets.java - src/share/classes/com/sun/org/apache/xalan/internal/lib/ExsltStrings.java - src/share/classes/com/sun/org/apache/xalan/internal/lib/Extensions.java - src/share/classes/com/sun/org/apache/xalan/internal/lib/NodeInfo.java - src/share/classes/com/sun/org/apache/xalan/internal/lib/ObjectFactory.java - src/share/classes/com/sun/org/apache/xalan/internal/lib/SecuritySupport.java - src/share/classes/com/sun/org/apache/xalan/internal/lib/SecuritySupport12.java - src/share/classes/com/sun/org/apache/xalan/internal/lib/package.html - src/share/classes/com/sun/org/apache/xalan/internal/res/XSLMessages.java - src/share/classes/com/sun/org/apache/xalan/internal/res/XSLTErrorResources.java - src/share/classes/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_de.java - src/share/classes/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_en.java - src/share/classes/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_es.java - src/share/classes/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_fr.java - src/share/classes/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_it.java - src/share/classes/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_ja.java - src/share/classes/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_ko.java - src/share/classes/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_pt_BR.java - src/share/classes/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_sv.java - src/share/classes/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_zh_CN.java - src/share/classes/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_zh_TW.java - src/share/classes/com/sun/org/apache/xalan/internal/res/XSLTInfo.properties - src/share/classes/com/sun/org/apache/xalan/internal/res/package.html - src/share/classes/com/sun/org/apache/xalan/internal/templates/Constants.java - src/share/classes/com/sun/org/apache/xalan/internal/templates/package.html - src/share/classes/com/sun/org/apache/xalan/internal/xslt/EnvironmentCheck.java - src/share/classes/com/sun/org/apache/xalan/internal/xslt/ObjectFactory.java - src/share/classes/com/sun/org/apache/xalan/internal/xslt/Process.java - src/share/classes/com/sun/org/apache/xalan/internal/xslt/SecuritySupport.java - src/share/classes/com/sun/org/apache/xalan/internal/xslt/SecuritySupport12.java - src/share/classes/com/sun/org/apache/xalan/internal/xslt/package.html - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/CollatorFactory.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/DOM.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/DOMCache.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/DOMEnhancedForDTM.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/NodeIterator.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/ProcessorVersion.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/StripFilter.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/Translet.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/TransletException.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/cmdline/Compile.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/cmdline/ObjectFactory.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/cmdline/SecuritySupport.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/cmdline/SecuritySupport12.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/cmdline/Transform.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/cmdline/getopt/GetOpt.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/cmdline/getopt/GetOptsException.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/cmdline/getopt/IllegalArgumentException.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/cmdline/getopt/MissingOptArgException.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/AbsoluteLocationPath.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/AbsolutePathPattern.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/AlternativePattern.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/AncestorPattern.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/ApplyImports.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/ApplyTemplates.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/ArgumentList.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Attribute.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/AttributeSet.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/AttributeValue.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/AttributeValueTemplate.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/BinOpExpr.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/BooleanCall.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/BooleanExpr.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/CallTemplate.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/CastCall.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/CastExpr.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/CeilingCall.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Choose.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Closure.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Comment.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/CompilerException.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/ConcatCall.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Constants.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/ContainsCall.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Copy.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/CopyOf.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/CurrentCall.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/DecimalFormatting.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/DocumentCall.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/ElementAvailableCall.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/EqualityExpr.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Expression.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Fallback.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/FilterExpr.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/FilterParentPath.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/FilteredAbsoluteLocationPath.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/FloorCall.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/FlowList.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/ForEach.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/FormatNumberCall.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/FunctionAvailableCall.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/FunctionCall.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/GenerateIdCall.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/IdKeyPattern.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/IdPattern.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/If.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/IllegalCharException.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Import.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Include.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Instruction.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/IntExpr.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Key.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/KeyCall.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/KeyPattern.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/LangCall.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/LastCall.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/LiteralAttribute.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/LiteralElement.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/LiteralExpr.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/LocalNameCall.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/LocationPathPattern.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/LogicalExpr.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Makefile.inc - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Message.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Mode.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/NameBase.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/NameCall.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/NamespaceAlias.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/NamespaceUriCall.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/NodeTest.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/NotCall.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Number.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/NumberCall.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/ObjectFactory.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Otherwise.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Output.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Param.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/ParameterRef.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/ParentLocationPath.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/ParentPattern.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Parser.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Pattern.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/PositionCall.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Predicate.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/ProcessingInstruction.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/ProcessingInstructionPattern.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/QName.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/RealExpr.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/RelationalExpr.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/RelativeLocationPath.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/RelativePathPattern.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/RoundCall.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/SecuritySupport.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/SecuritySupport12.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/SimpleAttributeValue.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Sort.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/SourceLoader.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/StartsWithCall.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Step.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/StepPattern.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/StringCall.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/StringLengthCall.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Stylesheet.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/SymbolTable.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/SyntaxTreeNode.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Template.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/TestSeq.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Text.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/TopLevelElement.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/TransletOutput.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/UnaryOpExpr.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/UnionPathExpr.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/UnparsedEntityUriCall.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/UnresolvedRef.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/UnsupportedElement.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/UseAttributeSets.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/ValueOf.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Variable.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/VariableBase.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/VariableRef.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/VariableRefBase.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/When.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Whitespace.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/WithParam.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/XPathLexer.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/XPathParser.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/XSLTC.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/XslAttribute.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/XslElement.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/sym.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/AttributeSetMethodGenerator.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/BooleanType.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ClassGenerator.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/CompareGenerator.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_ca.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_cs.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_de.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_es.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_fr.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_it.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_ja.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_ko.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_pt_BR.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_sk.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_sv.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_zh_CN.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_zh_TW.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMsg.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/FilterGenerator.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/IntType.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/MatchGenerator.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/MethodGenerator.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/MethodType.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/MultiHashtable.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/NamedMethodGenerator.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/NodeCounterGenerator.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/NodeSetType.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/NodeSortRecordFactGenerator.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/NodeSortRecordGenerator.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/NodeType.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/NumberType.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ObjectFactory.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ObjectType.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/RealType.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ReferenceType.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ResultTreeType.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/RtMethodGenerator.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/SecuritySupport.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/SecuritySupport12.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/SlotAllocator.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/StringStack.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/StringType.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/TestGenerator.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/Type.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/TypeCheckError.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/Util.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/VoidType.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/xpath.cup - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/xpath.lex - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/AbsoluteIterator.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/AdaptiveResultTreeImpl.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/AnyNodeCounter.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/BitArray.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/CachedNodeListIterator.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/ClonedNodeListIterator.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/CollatorFactoryBase.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/CurrentNodeListFilter.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/CurrentNodeListIterator.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/DOMAdapter.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/DOMBuilder.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/DOMWSFilter.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/DocumentCache.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/DupFilterIterator.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/EmptyFilter.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/ExtendedSAX.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/Filter.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/FilterIterator.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/FilteredStepIterator.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/ForwardPositionIterator.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/KeyIndex.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/LoadDocument.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/MatchingIterator.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/MultiDOM.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/MultiValuedNodeHeapIterator.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/MultipleNodeCounter.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/NodeCounter.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/NodeIteratorBase.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/NodeSortRecord.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/NodeSortRecordFactory.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/NthIterator.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/ObjectFactory.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/SAXImpl.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/SecuritySupport.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/SecuritySupport12.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/SimpleResultTreeImpl.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/SingleNodeCounter.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/SingletonIterator.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/SortSettings.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/SortingIterator.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/StepIterator.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/StripWhitespaceFilter.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/UnionIterator.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/XSLTCDTMManager.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/javax.xml.transform.TransformerFactory - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/AbstractTranslet.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/Attributes.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/BasisLibrary.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/Constants.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/ErrorMessages.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/ErrorMessages_ca.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/ErrorMessages_cs.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/ErrorMessages_de.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/ErrorMessages_es.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/ErrorMessages_fr.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/ErrorMessages_it.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/ErrorMessages_ja.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/ErrorMessages_ko.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/ErrorMessages_pt_BR.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/ErrorMessages_sk.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/ErrorMessages_sv.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/ErrorMessages_zh_CN.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/ErrorMessages_zh_TW.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/Hashtable.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/MessageHandler.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/Node.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/ObjectFactory.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/Operators.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/Parameter.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/SecuritySupport.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/SecuritySupport12.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/StringValueHandler.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/output/OutputBuffer.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/output/StringOutputBuffer.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/output/TransletOutputHandlerFactory.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/output/WriterOutputBuffer.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/trax/DOM2SAX.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/trax/DOM2TO.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/trax/ObjectFactory.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/trax/OutputSettings.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/trax/SAX2DOM.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/trax/SAX2StAXBaseWriter.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/trax/SAX2StAXEventWriter.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/trax/SAX2StAXStreamWriter.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/trax/SecuritySupport.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/trax/SecuritySupport12.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/trax/SmartTransformerFactoryImpl.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/trax/StAXEvent2SAX.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/trax/StAXStream2SAX.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/trax/TemplatesHandlerImpl.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/trax/TemplatesImpl.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/trax/TrAXFilter.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/trax/TransformerFactoryImpl.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/trax/TransformerHandlerImpl.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/trax/TransformerImpl.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/trax/Util.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/trax/XSLTCSource.java - src/share/classes/com/sun/org/apache/xalan/internal/xsltc/util/IntegerArray.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/AttrImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/AttrNSImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/AttributeMap.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/CDATASectionImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/CharacterDataImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/ChildNode.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/CommentImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/CoreDOMImplementationImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/CoreDocumentImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/DOMConfigurationImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/DOMErrorImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/DOMImplementationImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/DOMImplementationListImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/DOMImplementationSourceImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/DOMInputImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/DOMLocatorImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/DOMMessageFormatter.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/DOMNormalizer.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/DOMOutputImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/DOMStringListImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/DOMXSImplementationSourceImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/DeepNodeListImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/DeferredAttrImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/DeferredAttrNSImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/DeferredCDATASectionImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/DeferredCommentImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/DeferredDOMImplementationImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/DeferredDocumentImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/DeferredDocumentTypeImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/DeferredElementDefinitionImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/DeferredElementImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/DeferredElementNSImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/DeferredEntityImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/DeferredEntityReferenceImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/DeferredNode.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/DeferredNotationImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/DeferredProcessingInstructionImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/DeferredTextImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/DocumentFragmentImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/DocumentImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/DocumentTypeImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/ElementDefinitionImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/ElementImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/ElementNSImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/EntityImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/EntityReferenceImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/LCount.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/NamedNodeMapImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/NodeImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/NodeIteratorImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/NodeListCache.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/NotationImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/ObjectFactory.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/PSVIAttrNSImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/PSVIDOMImplementationImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/PSVIDocumentImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/PSVIElementNSImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/ParentNode.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/ProcessingInstructionImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/RangeExceptionImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/RangeImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/SecuritySupport.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/TextImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/TreeWalkerImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/events/EventImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/events/MutationEventImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/dom/org.apache.xerces.dom.DOMImplementationSourceImpl - src/share/classes/com/sun/org/apache/xerces/internal/dom/org.w3c.dom.DOMImplementationSourceList - src/share/classes/com/sun/org/apache/xerces/internal/impl/Constants.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/ExternalSubsetResolver.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/PropertyManager.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/RevalidationHandler.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/Version.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/XML11DTDScannerImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/XML11DocumentScannerImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/XML11EntityScanner.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/XML11NSDocumentScannerImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/XML11NamespaceBinder.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/XMLDTDScannerImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/XMLDocumentFragmentScannerImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/XMLDocumentScannerImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/XMLEntityDescription.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/XMLEntityHandler.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/XMLEntityManager.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/XMLEntityScanner.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/XMLErrorReporter.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/XMLNSDocumentScannerImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/XMLNamespaceBinder.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/XMLScanner.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/XMLStreamFilterImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/XMLStreamReaderImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/XMLVersionDetector.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/BalancedDTDGrammar.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/DTDGrammar.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/DTDGrammarBucket.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/XML11DTDProcessor.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/XML11DTDValidator.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/XML11NSDTDValidator.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/XMLAttributeDecl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/XMLContentSpec.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/XMLDTDDescription.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/XMLDTDLoader.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/XMLDTDProcessor.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/XMLDTDValidator.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/XMLDTDValidatorFilter.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/XMLElementDecl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/XMLEntityDecl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/XMLNSDTDValidator.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/XMLNotationDecl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/XMLSimpleType.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/models/CMAny.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/models/CMBinOp.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/models/CMLeaf.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/models/CMNode.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/models/CMStateSet.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/models/CMUniOp.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/models/ContentModelValidator.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/models/DFAContentModel.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/models/MixedContentModel.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/models/SimpleContentModel.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/DTDDVFactory.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/DVFactoryException.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/DatatypeException.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/DatatypeValidator.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/InvalidDatatypeFacetException.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/InvalidDatatypeValueException.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/ObjectFactory.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/SchemaDVFactory.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/SecuritySupport.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/ValidatedInfo.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/ValidationContext.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/XSFacets.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/XSSimpleType.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/dtd/DTDDVFactoryImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/dtd/ENTITYDatatypeValidator.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/dtd/IDDatatypeValidator.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/dtd/IDREFDatatypeValidator.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/dtd/ListDatatypeValidator.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/dtd/NMTOKENDatatypeValidator.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/dtd/NOTATIONDatatypeValidator.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/dtd/StringDatatypeValidator.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/dtd/XML11DTDDVFactoryImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/dtd/XML11IDDatatypeValidator.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/dtd/XML11IDREFDatatypeValidator.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/dtd/XML11NMTOKENDatatypeValidator.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/util/Base64.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/util/ByteListImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/util/HexBin.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/AbstractDateTimeDV.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/AnyAtomicDV.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/AnySimpleDV.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/AnyURIDV.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/Base64BinaryDV.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/BaseDVFactory.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/BaseSchemaDVFactory.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/BooleanDV.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/DateDV.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/DateTimeDV.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/DayDV.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/DayTimeDurationDV.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/DecimalDV.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/DoubleDV.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/DurationDV.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/EntityDV.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/ExtendedSchemaDVFactoryImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/FloatDV.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/FullDVFactory.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/HexBinaryDV.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/IDDV.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/IDREFDV.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/IntegerDV.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/ListDV.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/MonthDV.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/MonthDayDV.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/PrecisionDecimalDV.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/QNameDV.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/SchemaDVFactoryImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/SchemaDateTimeException.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/StringDV.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/TimeDV.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/TypeValidator.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/UnionDV.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/XSSimpleTypeDecl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/XSSimpleTypeDelegate.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/YearDV.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/YearMonthDV.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/YearMonthDurationDV.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/io/ASCIIReader.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/io/MalformedByteSequenceException.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/io/UCSReader.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/io/UTF8Reader.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/DOMMessages.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/DOMMessages_de.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/DOMMessages_es.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/DOMMessages_fr.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/DOMMessages_it.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/DOMMessages_ja.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/DOMMessages_ko.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/DOMMessages_pt_BR.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/DOMMessages_sv.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/DOMMessages_zh_CN.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/DOMMessages_zh_TW.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/DatatypeMessages.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/DatatypeMessages_de.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/DatatypeMessages_es.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/DatatypeMessages_fr.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/DatatypeMessages_it.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/DatatypeMessages_ja.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/DatatypeMessages_ko.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/DatatypeMessages_pt_BR.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/DatatypeMessages_sv.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/DatatypeMessages_zh_CN.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/DatatypeMessages_zh_TW.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/JAXPValidationMessages.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/JAXPValidationMessages_de.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/JAXPValidationMessages_es.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/JAXPValidationMessages_fr.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/JAXPValidationMessages_it.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/JAXPValidationMessages_ja.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/JAXPValidationMessages_ko.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/JAXPValidationMessages_pt_BR.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/JAXPValidationMessages_sv.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/JAXPValidationMessages_zh_CN.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/JAXPValidationMessages_zh_TW.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/SAXMessages.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/SAXMessages_de.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/SAXMessages_es.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/SAXMessages_fr.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/SAXMessages_it.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/SAXMessages_ja.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/SAXMessages_ko.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/SAXMessages_pt_BR.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/SAXMessages_sv.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/SAXMessages_zh_CN.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/SAXMessages_zh_TW.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XIncludeMessages.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XIncludeMessages_de.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XIncludeMessages_es.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XIncludeMessages_fr.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XIncludeMessages_it.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XIncludeMessages_ja.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XIncludeMessages_ko.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XIncludeMessages_pt_BR.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XIncludeMessages_sv.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XIncludeMessages_zh_CN.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XIncludeMessages_zh_TW.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessageFormatter.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessageFormatter_de.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessageFormatter_es.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessageFormatter_fr.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessageFormatter_it.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessageFormatter_ja.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessageFormatter_ko.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessageFormatter_pt_BR.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessageFormatter_sv.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessageFormatter_zh_CN.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessageFormatter_zh_TW.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_de.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_es.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_fr.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_it.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_ja.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_ko.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_pt_BR.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_sv.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_zh_CN.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_zh_TW.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLSchemaMessages.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLSchemaMessages_de.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLSchemaMessages_es.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLSchemaMessages_fr.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLSchemaMessages_it.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLSchemaMessages_ja.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLSchemaMessages_ko.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLSchemaMessages_pt_BR.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLSchemaMessages_sv.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLSchemaMessages_zh_CN.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLSchemaMessages_zh_TW.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLSerializerMessages.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLSerializerMessages_de.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLSerializerMessages_es.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLSerializerMessages_fr.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLSerializerMessages_it.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLSerializerMessages_ja.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLSerializerMessages_ko.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLSerializerMessages_pt_BR.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLSerializerMessages_sv.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLSerializerMessages_zh_CN.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLSerializerMessages_zh_TW.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XPointerMessages.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XPointerMessages_de.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XPointerMessages_es.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XPointerMessages_fr.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XPointerMessages_it.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XPointerMessages_ja.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XPointerMessages_ko.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XPointerMessages_pt_BR.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XPointerMessages_sv.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XPointerMessages_zh_CN.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XPointerMessages_zh_TW.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/validation/EntityState.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/validation/ValidationManager.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/validation/ValidationState.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xpath/XPath.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xpath/XPathException.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xpath/regex/BMPattern.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xpath/regex/CaseInsensitiveMap.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xpath/regex/Match.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xpath/regex/Op.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xpath/regex/ParseException.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xpath/regex/ParserForXMLSchema.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xpath/regex/REUtil.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xpath/regex/RangeToken.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xpath/regex/RegexParser.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xpath/regex/RegularExpression.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xpath/regex/Token.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xpath/regex/message.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/xpath/regex/message_fr.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/xpath/regex/message_ja.properties - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/AttributePSVImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/ElementPSVImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/SchemaGrammar.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/SchemaNamespaceSupport.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/SchemaSymbols.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/SubstitutionGroupHandler.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/XMLSchemaException.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/XMLSchemaLoader.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/XMLSchemaValidator.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/XSAnnotationImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/XSAttributeDecl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/XSAttributeGroupDecl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/XSAttributeUseImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/XSComplexTypeDecl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/XSConstraints.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/XSDDescription.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/XSDeclarationPool.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/XSElementDecl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/XSGrammarBucket.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/XSGroupDecl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/XSImplementationImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/XSLoaderImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/XSMessageFormatter.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/XSModelGroupImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/XSModelImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/XSNotationDecl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/XSParticleDecl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/XSWildcardDecl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/identity/Field.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/identity/FieldActivator.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/identity/IdentityConstraint.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/identity/KeyRef.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/identity/Selector.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/identity/UniqueOrKey.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/identity/ValueStore.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/identity/XPathMatcher.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/models/CMBuilder.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/models/CMNodeFactory.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/models/XSAllCM.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/models/XSCMBinOp.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/models/XSCMLeaf.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/models/XSCMRepeatingLeaf.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/models/XSCMUniOp.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/models/XSCMValidator.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/models/XSDFACM.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/models/XSEmptyCM.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/opti/AttrImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/opti/DefaultDocument.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/opti/DefaultElement.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/opti/DefaultNode.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/opti/DefaultText.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/opti/DefaultXMLDocumentHandler.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/opti/ElementImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/opti/NamedNodeMapImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/opti/NodeImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/opti/SchemaDOM.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/opti/SchemaDOMImplementation.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/opti/SchemaDOMParser.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/opti/SchemaParsingConfig.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/opti/TextImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/traversers/SchemaContentHandler.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/traversers/StAXSchemaParser.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSAnnotationInfo.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSAttributeChecker.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSDAbstractIDConstraintTraverser.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSDAbstractParticleTraverser.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSDAbstractTraverser.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSDAttributeGroupTraverser.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSDAttributeTraverser.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSDComplexTypeTraverser.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSDElementTraverser.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSDGroupTraverser.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSDHandler.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSDKeyrefTraverser.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSDNotationTraverser.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSDSimpleTypeTraverser.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSDUniqueOrKeyTraverser.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSDWildcardTraverser.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSDocumentInfo.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/util/LSInputListImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/util/ObjectListImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/util/ShortListImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/util/SimpleLocator.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/util/StringListImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/util/XInt.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/util/XIntPool.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/util/XSGrammarPool.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/util/XSInputSource.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/util/XSNamedMap4Types.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/util/XSNamedMapImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/impl/xs/util/XSObjectListImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/DefaultValidationErrorHandler.java - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/DocumentBuilderFactoryImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/DocumentBuilderImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/JAXPConstants.java - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/JAXPValidatorComponent.java - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/SAXParserFactoryImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/SAXParserImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/SchemaValidatorConfiguration.java - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/TeeXMLDocumentFilterImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/UnparsedEntityHandler.java - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/datatype/DatatypeFactoryImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/datatype/DurationDayTimeImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/datatype/DurationImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/datatype/DurationYearMonthImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/datatype/XMLGregorianCalendarImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/datatype/javax.xml.datatype.DatatypeFactory - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/javax.xml.parsers.DocumentBuilderFactory - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/javax.xml.parsers.SAXParserFactory - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/validation/AbstractXMLSchema.java - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/validation/DOMDocumentHandler.java - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/validation/DOMResultAugmentor.java - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/validation/DOMResultBuilder.java - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/validation/DOMValidatorHelper.java - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/validation/DraconianErrorHandler.java - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/validation/EmptyXMLSchema.java - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/validation/ErrorHandlerAdaptor.java - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/validation/JAXPValidationMessageFormatter.java - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/validation/ReadOnlyGrammarPool.java - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/validation/SimpleXMLSchema.java - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/validation/SoftReferenceGrammarPool.java - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/validation/StAXValidatorHelper.java - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/validation/StreamValidatorHelper.java - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/validation/Util.java - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/validation/ValidatorHandlerImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/validation/ValidatorHelper.java - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/validation/ValidatorImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/validation/WeakReferenceXMLSchema.java - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/validation/WrappedSAXException.java - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/validation/XMLSchema.java - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/validation/XMLSchemaFactory.java - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/validation/XMLSchemaValidatorComponentManager.java - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/validation/XSGrammarPoolContainer.java - src/share/classes/com/sun/org/apache/xerces/internal/jaxp/validation/javax.xml.validation.SchemaFactory - src/share/classes/com/sun/org/apache/xerces/internal/parsers/AbstractDOMParser.java - src/share/classes/com/sun/org/apache/xerces/internal/parsers/AbstractSAXParser.java - src/share/classes/com/sun/org/apache/xerces/internal/parsers/AbstractXMLDocumentParser.java - src/share/classes/com/sun/org/apache/xerces/internal/parsers/BasicParserConfiguration.java - src/share/classes/com/sun/org/apache/xerces/internal/parsers/CachingParserPool.java - src/share/classes/com/sun/org/apache/xerces/internal/parsers/DOMParser.java - src/share/classes/com/sun/org/apache/xerces/internal/parsers/DOMParserImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/parsers/DTDConfiguration.java - src/share/classes/com/sun/org/apache/xerces/internal/parsers/DTDParser.java - src/share/classes/com/sun/org/apache/xerces/internal/parsers/IntegratedParserConfiguration.java - src/share/classes/com/sun/org/apache/xerces/internal/parsers/NonValidatingConfiguration.java - src/share/classes/com/sun/org/apache/xerces/internal/parsers/ObjectFactory.java - src/share/classes/com/sun/org/apache/xerces/internal/parsers/SAXParser.java - src/share/classes/com/sun/org/apache/xerces/internal/parsers/SecurityConfiguration.java - src/share/classes/com/sun/org/apache/xerces/internal/parsers/SecuritySupport.java - src/share/classes/com/sun/org/apache/xerces/internal/parsers/StandardParserConfiguration.java - src/share/classes/com/sun/org/apache/xerces/internal/parsers/XIncludeAwareParserConfiguration.java - src/share/classes/com/sun/org/apache/xerces/internal/parsers/XIncludeParserConfiguration.java - src/share/classes/com/sun/org/apache/xerces/internal/parsers/XML11Configurable.java - src/share/classes/com/sun/org/apache/xerces/internal/parsers/XML11Configuration.java - src/share/classes/com/sun/org/apache/xerces/internal/parsers/XML11DTDConfiguration.java - src/share/classes/com/sun/org/apache/xerces/internal/parsers/XML11NonValidatingConfiguration.java - src/share/classes/com/sun/org/apache/xerces/internal/parsers/XMLDocumentParser.java - src/share/classes/com/sun/org/apache/xerces/internal/parsers/XMLGrammarCachingConfiguration.java - src/share/classes/com/sun/org/apache/xerces/internal/parsers/XMLGrammarParser.java - src/share/classes/com/sun/org/apache/xerces/internal/parsers/XMLGrammarPreparser.java - src/share/classes/com/sun/org/apache/xerces/internal/parsers/XMLParser.java - src/share/classes/com/sun/org/apache/xerces/internal/parsers/XPointerParserConfiguration.java - src/share/classes/com/sun/org/apache/xerces/internal/parsers/org.apache.xerces.xni.parser.DTDConfiguration - src/share/classes/com/sun/org/apache/xerces/internal/parsers/org.apache.xerces.xni.parser.XML11Configuration - src/share/classes/com/sun/org/apache/xerces/internal/parsers/org.apache.xerces.xni.parser.XMLParserConfiguration - src/share/classes/com/sun/org/apache/xerces/internal/parsers/org.xml.sax.driver - src/share/classes/com/sun/org/apache/xerces/internal/util/AttributesProxy.java - src/share/classes/com/sun/org/apache/xerces/internal/util/AugmentationsImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/util/DOMEntityResolverWrapper.java - src/share/classes/com/sun/org/apache/xerces/internal/util/DOMErrorHandlerWrapper.java - src/share/classes/com/sun/org/apache/xerces/internal/util/DOMInputSource.java - src/share/classes/com/sun/org/apache/xerces/internal/util/DOMUtil.java - src/share/classes/com/sun/org/apache/xerces/internal/util/DatatypeMessageFormatter.java - src/share/classes/com/sun/org/apache/xerces/internal/util/DefaultErrorHandler.java - src/share/classes/com/sun/org/apache/xerces/internal/util/DraconianErrorHandler.java - src/share/classes/com/sun/org/apache/xerces/internal/util/EncodingMap.java - src/share/classes/com/sun/org/apache/xerces/internal/util/EntityResolver2Wrapper.java - src/share/classes/com/sun/org/apache/xerces/internal/util/EntityResolverWrapper.java - src/share/classes/com/sun/org/apache/xerces/internal/util/ErrorHandlerProxy.java - src/share/classes/com/sun/org/apache/xerces/internal/util/ErrorHandlerWrapper.java - src/share/classes/com/sun/org/apache/xerces/internal/util/FeatureState.java - src/share/classes/com/sun/org/apache/xerces/internal/util/HTTPInputSource.java - src/share/classes/com/sun/org/apache/xerces/internal/util/IntStack.java - src/share/classes/com/sun/org/apache/xerces/internal/util/JAXPNamespaceContextWrapper.java - src/share/classes/com/sun/org/apache/xerces/internal/util/LocatorProxy.java - src/share/classes/com/sun/org/apache/xerces/internal/util/LocatorWrapper.java - src/share/classes/com/sun/org/apache/xerces/internal/util/MessageFormatter.java - src/share/classes/com/sun/org/apache/xerces/internal/util/NamespaceContextWrapper.java - src/share/classes/com/sun/org/apache/xerces/internal/util/NamespaceSupport.java - src/share/classes/com/sun/org/apache/xerces/internal/util/ParserConfigurationSettings.java - src/share/classes/com/sun/org/apache/xerces/internal/util/PropertyState.java - src/share/classes/com/sun/org/apache/xerces/internal/util/SAX2XNI.java - src/share/classes/com/sun/org/apache/xerces/internal/util/SAXInputSource.java - src/share/classes/com/sun/org/apache/xerces/internal/util/SAXLocatorWrapper.java - src/share/classes/com/sun/org/apache/xerces/internal/util/SAXMessageFormatter.java - src/share/classes/com/sun/org/apache/xerces/internal/util/SecurityManager.java - src/share/classes/com/sun/org/apache/xerces/internal/util/ShadowedSymbolTable.java - src/share/classes/com/sun/org/apache/xerces/internal/util/StAXInputSource.java - src/share/classes/com/sun/org/apache/xerces/internal/util/StAXLocationWrapper.java - src/share/classes/com/sun/org/apache/xerces/internal/util/Status.java - src/share/classes/com/sun/org/apache/xerces/internal/util/SymbolHash.java - src/share/classes/com/sun/org/apache/xerces/internal/util/SymbolTable.java - src/share/classes/com/sun/org/apache/xerces/internal/util/SynchronizedSymbolTable.java - src/share/classes/com/sun/org/apache/xerces/internal/util/TeeXMLDocumentFilterImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/util/TypeInfoImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/util/URI.java - src/share/classes/com/sun/org/apache/xerces/internal/util/XML11Char.java - src/share/classes/com/sun/org/apache/xerces/internal/util/XMLAttributesImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/util/XMLAttributesIteratorImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/util/XMLCatalogResolver.java - src/share/classes/com/sun/org/apache/xerces/internal/util/XMLChar.java - src/share/classes/com/sun/org/apache/xerces/internal/util/XMLDocumentFilterImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/util/XMLEntityDescriptionImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/util/XMLErrorCode.java - src/share/classes/com/sun/org/apache/xerces/internal/util/XMLGrammarPoolImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/util/XMLInputSourceAdaptor.java - src/share/classes/com/sun/org/apache/xerces/internal/util/XMLResourceIdentifierImpl.java - src/share/classes/com/sun/org/apache/xerces/internal/util/XMLStringBuffer.java - src/share/classes/com/sun/org/apache/xerces/internal/util/XMLSymbols.java - src/share/classes/com/sun/org/apache/xerces/internal/xinclude/MultipleScopeNamespaceSupport.java - src/share/classes/com/sun/org/apache/xerces/internal/xinclude/ObjectFactory.java - src/share/classes/com/sun/org/apache/xerces/internal/xinclude/SecuritySupport.java - src/share/classes/com/sun/org/apache/xerces/internal/xinclude/XInclude11TextReader.java - src/share/classes/com/sun/org/apache/xerces/internal/xinclude/XIncludeHandler.java - src/share/classes/com/sun/org/apache/xerces/internal/xinclude/XIncludeMessageFormatter.java - src/share/classes/com/sun/org/apache/xerces/internal/xinclude/XIncludeNamespaceSupport.java - src/share/classes/com/sun/org/apache/xerces/internal/xinclude/XIncludeTextReader.java - src/share/classes/com/sun/org/apache/xerces/internal/xinclude/XPointerElementHandler.java - src/share/classes/com/sun/org/apache/xerces/internal/xinclude/XPointerFramework.java - src/share/classes/com/sun/org/apache/xerces/internal/xinclude/XPointerSchema.java - src/share/classes/com/sun/org/apache/xerces/internal/xni/Augmentations.java - src/share/classes/com/sun/org/apache/xerces/internal/xni/NamespaceContext.java - src/share/classes/com/sun/org/apache/xerces/internal/xni/QName.java - src/share/classes/com/sun/org/apache/xerces/internal/xni/XMLAttributes.java - src/share/classes/com/sun/org/apache/xerces/internal/xni/XMLDTDContentModelHandler.java - src/share/classes/com/sun/org/apache/xerces/internal/xni/XMLDTDHandler.java - src/share/classes/com/sun/org/apache/xerces/internal/xni/XMLDocumentFragmentHandler.java - src/share/classes/com/sun/org/apache/xerces/internal/xni/XMLDocumentHandler.java - src/share/classes/com/sun/org/apache/xerces/internal/xni/XMLLocator.java - src/share/classes/com/sun/org/apache/xerces/internal/xni/XMLResourceIdentifier.java - src/share/classes/com/sun/org/apache/xerces/internal/xni/XMLString.java - src/share/classes/com/sun/org/apache/xerces/internal/xni/XNIException.java - src/share/classes/com/sun/org/apache/xerces/internal/xni/grammars/Grammar.java - src/share/classes/com/sun/org/apache/xerces/internal/xni/grammars/XMLDTDDescription.java - src/share/classes/com/sun/org/apache/xerces/internal/xni/grammars/XMLGrammarDescription.java - src/share/classes/com/sun/org/apache/xerces/internal/xni/grammars/XMLGrammarLoader.java - src/share/classes/com/sun/org/apache/xerces/internal/xni/grammars/XMLGrammarPool.java - src/share/classes/com/sun/org/apache/xerces/internal/xni/grammars/XMLSchemaDescription.java - src/share/classes/com/sun/org/apache/xerces/internal/xni/grammars/XSGrammar.java - src/share/classes/com/sun/org/apache/xerces/internal/xni/parser/XMLComponent.java - src/share/classes/com/sun/org/apache/xerces/internal/xni/parser/XMLComponentManager.java - src/share/classes/com/sun/org/apache/xerces/internal/xni/parser/XMLConfigurationException.java - src/share/classes/com/sun/org/apache/xerces/internal/xni/parser/XMLDTDContentModelFilter.java - src/share/classes/com/sun/org/apache/xerces/internal/xni/parser/XMLDTDContentModelSource.java - src/share/classes/com/sun/org/apache/xerces/internal/xni/parser/XMLDTDFilter.java - src/share/classes/com/sun/org/apache/xerces/internal/xni/parser/XMLDTDScanner.java - src/share/classes/com/sun/org/apache/xerces/internal/xni/parser/XMLDTDSource.java - src/share/classes/com/sun/org/apache/xerces/internal/xni/parser/XMLDocumentFilter.java - src/share/classes/com/sun/org/apache/xerces/internal/xni/parser/XMLDocumentScanner.java - src/share/classes/com/sun/org/apache/xerces/internal/xni/parser/XMLDocumentSource.java - src/share/classes/com/sun/org/apache/xerces/internal/xni/parser/XMLEntityResolver.java - src/share/classes/com/sun/org/apache/xerces/internal/xni/parser/XMLErrorHandler.java - src/share/classes/com/sun/org/apache/xerces/internal/xni/parser/XMLInputSource.java - src/share/classes/com/sun/org/apache/xerces/internal/xni/parser/XMLParseException.java - src/share/classes/com/sun/org/apache/xerces/internal/xni/parser/XMLParserConfiguration.java - src/share/classes/com/sun/org/apache/xerces/internal/xni/parser/XMLPullParserConfiguration.java - src/share/classes/com/sun/org/apache/xerces/internal/xpointer/ElementSchemePointer.java - src/share/classes/com/sun/org/apache/xerces/internal/xpointer/ShortHandPointer.java - src/share/classes/com/sun/org/apache/xerces/internal/xpointer/XPointerErrorHandler.java - src/share/classes/com/sun/org/apache/xerces/internal/xpointer/XPointerHandler.java - src/share/classes/com/sun/org/apache/xerces/internal/xpointer/XPointerMessageFormatter.java - src/share/classes/com/sun/org/apache/xerces/internal/xpointer/XPointerPart.java - src/share/classes/com/sun/org/apache/xerces/internal/xpointer/XPointerProcessor.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/AttributePSVI.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/ElementPSVI.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/ItemPSVI.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/LSInputList.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/PSVIProvider.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/ShortList.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/StringList.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/XSAnnotation.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/XSAttributeDeclaration.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/XSAttributeGroupDefinition.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/XSAttributeUse.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/XSComplexTypeDefinition.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/XSConstants.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/XSElementDeclaration.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/XSException.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/XSFacet.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/XSIDCDefinition.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/XSImplementation.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/XSLoader.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/XSModel.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/XSModelGroup.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/XSModelGroupDefinition.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/XSMultiValueFacet.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/XSNamedMap.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/XSNamespaceItem.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/XSNamespaceItemList.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/XSNotationDeclaration.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/XSObject.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/XSObjectList.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/XSParticle.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/XSSimpleTypeDefinition.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/XSTerm.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/XSTypeDefinition.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/XSWildcard.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/datatypes/ByteList.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/datatypes/ObjectList.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/datatypes/XSDateTime.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/datatypes/XSDecimal.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/datatypes/XSDouble.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/datatypes/XSFloat.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/datatypes/XSQName.java - src/share/classes/com/sun/org/apache/xerces/internal/xs/datatypes/package.html - src/share/classes/com/sun/org/apache/xml/internal/dtm/Axis.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/DTM.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/DTMAxisIterator.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/DTMAxisTraverser.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/DTMConfigurationException.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/DTMDOMException.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/DTMException.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/DTMFilter.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/DTMIterator.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/DTMManager.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/DTMWSFilter.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/ObjectFactory.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/SecuritySupport.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/SecuritySupport12.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/ref/ChunkedIntArray.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/ref/CoroutineManager.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/ref/CoroutineParser.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/ref/CustomStringPool.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/ref/DTMAxisIterNodeList.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/ref/DTMAxisIteratorBase.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/ref/DTMChildIterNodeList.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/ref/DTMDefaultBase.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/ref/DTMDefaultBaseIterators.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/ref/DTMDefaultBaseTraversers.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/ref/DTMDocumentImpl.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/ref/DTMManagerDefault.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/ref/DTMNamedNodeMap.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/ref/DTMNodeIterator.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/ref/DTMNodeList.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/ref/DTMNodeListBase.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/ref/DTMNodeProxy.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/ref/DTMSafeStringPool.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/ref/DTMStringPool.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/ref/DTMTreeWalker.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/ref/EmptyIterator.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/ref/ExpandedNameTable.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/ref/ExtendedType.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/ref/IncrementalSAXSource.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/ref/IncrementalSAXSource_Filter.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/ref/IncrementalSAXSource_Xerces.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/ref/NodeLocator.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/ref/ObjectFactory.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/ref/SecuritySupport.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/ref/SecuritySupport12.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/ref/dom2dtm/DOM2DTM.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/ref/dom2dtm/DOM2DTMdefaultNamespaceDeclarationNode.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/ref/sax2dtm/SAX2DTM.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/ref/sax2dtm/SAX2DTM2.java - src/share/classes/com/sun/org/apache/xml/internal/dtm/ref/sax2dtm/SAX2RTFDTM.java - src/share/classes/com/sun/org/apache/xml/internal/res/XMLErrorResources.java - src/share/classes/com/sun/org/apache/xml/internal/res/XMLErrorResources_ca.java - src/share/classes/com/sun/org/apache/xml/internal/res/XMLErrorResources_cs.java - src/share/classes/com/sun/org/apache/xml/internal/res/XMLErrorResources_de.java - src/share/classes/com/sun/org/apache/xml/internal/res/XMLErrorResources_en.java - src/share/classes/com/sun/org/apache/xml/internal/res/XMLErrorResources_es.java - src/share/classes/com/sun/org/apache/xml/internal/res/XMLErrorResources_fr.java - src/share/classes/com/sun/org/apache/xml/internal/res/XMLErrorResources_it.java - src/share/classes/com/sun/org/apache/xml/internal/res/XMLErrorResources_ja.java - src/share/classes/com/sun/org/apache/xml/internal/res/XMLErrorResources_ko.java - src/share/classes/com/sun/org/apache/xml/internal/res/XMLErrorResources_pt_BR.java - src/share/classes/com/sun/org/apache/xml/internal/res/XMLErrorResources_sk.java - src/share/classes/com/sun/org/apache/xml/internal/res/XMLErrorResources_sv.java - src/share/classes/com/sun/org/apache/xml/internal/res/XMLErrorResources_tr.java - src/share/classes/com/sun/org/apache/xml/internal/res/XMLErrorResources_zh_CN.java - src/share/classes/com/sun/org/apache/xml/internal/res/XMLErrorResources_zh_HK.java - src/share/classes/com/sun/org/apache/xml/internal/res/XMLErrorResources_zh_TW.java - src/share/classes/com/sun/org/apache/xml/internal/res/XMLMessages.java - src/share/classes/com/sun/org/apache/xml/internal/resolver/Catalog.java - src/share/classes/com/sun/org/apache/xml/internal/resolver/CatalogEntry.java - src/share/classes/com/sun/org/apache/xml/internal/resolver/CatalogException.java - src/share/classes/com/sun/org/apache/xml/internal/resolver/CatalogManager.java - src/share/classes/com/sun/org/apache/xml/internal/resolver/Resolver.java - src/share/classes/com/sun/org/apache/xml/internal/resolver/helpers/BootstrapResolver.java - src/share/classes/com/sun/org/apache/xml/internal/resolver/helpers/Debug.java - src/share/classes/com/sun/org/apache/xml/internal/resolver/helpers/FileURL.java - src/share/classes/com/sun/org/apache/xml/internal/resolver/helpers/Namespaces.java - src/share/classes/com/sun/org/apache/xml/internal/resolver/helpers/PublicId.java - src/share/classes/com/sun/org/apache/xml/internal/resolver/readers/CatalogReader.java - src/share/classes/com/sun/org/apache/xml/internal/resolver/readers/DOMCatalogParser.java - src/share/classes/com/sun/org/apache/xml/internal/resolver/readers/DOMCatalogReader.java - src/share/classes/com/sun/org/apache/xml/internal/resolver/readers/ExtendedXMLCatalogReader.java - src/share/classes/com/sun/org/apache/xml/internal/resolver/readers/OASISXMLCatalogReader.java - src/share/classes/com/sun/org/apache/xml/internal/resolver/readers/SAXCatalogParser.java - src/share/classes/com/sun/org/apache/xml/internal/resolver/readers/SAXCatalogReader.java - src/share/classes/com/sun/org/apache/xml/internal/resolver/readers/SAXParserHandler.java - src/share/classes/com/sun/org/apache/xml/internal/resolver/readers/TR9401CatalogReader.java - src/share/classes/com/sun/org/apache/xml/internal/resolver/readers/TextCatalogReader.java - src/share/classes/com/sun/org/apache/xml/internal/resolver/readers/XCatalogReader.java - src/share/classes/com/sun/org/apache/xml/internal/resolver/tools/CatalogResolver.java - src/share/classes/com/sun/org/apache/xml/internal/resolver/tools/ResolvingParser.java - src/share/classes/com/sun/org/apache/xml/internal/resolver/tools/ResolvingXMLFilter.java - src/share/classes/com/sun/org/apache/xml/internal/resolver/tools/ResolvingXMLReader.java - src/share/classes/com/sun/org/apache/xml/internal/serialize/BaseMarkupSerializer.java - src/share/classes/com/sun/org/apache/xml/internal/serialize/DOMSerializer.java - src/share/classes/com/sun/org/apache/xml/internal/serialize/DOMSerializerImpl.java - src/share/classes/com/sun/org/apache/xml/internal/serialize/ElementState.java - src/share/classes/com/sun/org/apache/xml/internal/serialize/EncodingInfo.java - src/share/classes/com/sun/org/apache/xml/internal/serialize/Encodings.java - src/share/classes/com/sun/org/apache/xml/internal/serialize/HTMLEntities.res - src/share/classes/com/sun/org/apache/xml/internal/serialize/HTMLSerializer.java - src/share/classes/com/sun/org/apache/xml/internal/serialize/HTMLdtd.java - src/share/classes/com/sun/org/apache/xml/internal/serialize/IndentPrinter.java - src/share/classes/com/sun/org/apache/xml/internal/serialize/LineSeparator.java - src/share/classes/com/sun/org/apache/xml/internal/serialize/Method.java - src/share/classes/com/sun/org/apache/xml/internal/serialize/ObjectFactory.java - src/share/classes/com/sun/org/apache/xml/internal/serialize/OutputFormat.java - src/share/classes/com/sun/org/apache/xml/internal/serialize/Printer.java - src/share/classes/com/sun/org/apache/xml/internal/serialize/SecuritySupport.java - src/share/classes/com/sun/org/apache/xml/internal/serialize/Serializer.java - src/share/classes/com/sun/org/apache/xml/internal/serialize/SerializerFactory.java - src/share/classes/com/sun/org/apache/xml/internal/serialize/SerializerFactoryImpl.java - src/share/classes/com/sun/org/apache/xml/internal/serialize/TextSerializer.java - src/share/classes/com/sun/org/apache/xml/internal/serialize/XHTMLSerializer.java - src/share/classes/com/sun/org/apache/xml/internal/serialize/XML11Serializer.java - src/share/classes/com/sun/org/apache/xml/internal/serialize/XMLSerializer.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/AttributesImplSerializer.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/CharInfo.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/DOMSerializer.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/ElemContext.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/ElemDesc.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/EmptySerializer.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/EncodingInfo.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/Encodings.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/Encodings.properties - src/share/classes/com/sun/org/apache/xml/internal/serializer/ExtendedContentHandler.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/ExtendedLexicalHandler.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/HTMLEntities.properties - src/share/classes/com/sun/org/apache/xml/internal/serializer/Method.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/NamespaceMappings.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/ObjectFactory.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/OutputPropertiesFactory.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/OutputPropertyUtils.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/SecuritySupport.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/SecuritySupport12.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/SerializationHandler.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/Serializer.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/SerializerBase.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/SerializerConstants.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/SerializerFactory.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/SerializerTrace.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/SerializerTraceWriter.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/ToHTMLSAXHandler.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/ToHTMLStream.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/ToSAXHandler.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/ToStream.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/ToTextSAXHandler.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/ToTextStream.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/ToUnknownStream.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/ToXMLSAXHandler.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/ToXMLStream.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/TransformStateSetter.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/TreeWalker.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/Utils.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/Version.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/WriterChain.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/WriterToASCI.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/WriterToUTF8Buffered.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/XMLEntities.properties - src/share/classes/com/sun/org/apache/xml/internal/serializer/XSLOutputAttributes.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/output_html.properties - src/share/classes/com/sun/org/apache/xml/internal/serializer/output_text.properties - src/share/classes/com/sun/org/apache/xml/internal/serializer/output_unknown.properties - src/share/classes/com/sun/org/apache/xml/internal/serializer/output_xml.properties - src/share/classes/com/sun/org/apache/xml/internal/serializer/package.html - src/share/classes/com/sun/org/apache/xml/internal/serializer/utils/AttList.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/utils/BoolStack.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/utils/DOM2Helper.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/utils/Messages.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/utils/MsgKey.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/utils/SerializerMessages.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/utils/SerializerMessages_ca.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/utils/SerializerMessages_cs.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/utils/SerializerMessages_de.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/utils/SerializerMessages_en.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/utils/SerializerMessages_es.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/utils/SerializerMessages_fr.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/utils/SerializerMessages_it.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/utils/SerializerMessages_ja.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/utils/SerializerMessages_ko.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/utils/SerializerMessages_sv.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/utils/SerializerMessages_zh_CN.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/utils/SerializerMessages_zh_TW.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/utils/StringToIntTable.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/utils/SystemIDResolver.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/utils/URI.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/utils/Utils.java - src/share/classes/com/sun/org/apache/xml/internal/serializer/utils/WrappedRuntimeException.java - src/share/classes/com/sun/org/apache/xml/internal/utils/AttList.java - src/share/classes/com/sun/org/apache/xml/internal/utils/BoolStack.java - src/share/classes/com/sun/org/apache/xml/internal/utils/CharKey.java - src/share/classes/com/sun/org/apache/xml/internal/utils/Constants.java - src/share/classes/com/sun/org/apache/xml/internal/utils/DOM2Helper.java - src/share/classes/com/sun/org/apache/xml/internal/utils/DOMBuilder.java - src/share/classes/com/sun/org/apache/xml/internal/utils/DOMHelper.java - src/share/classes/com/sun/org/apache/xml/internal/utils/DOMOrder.java - src/share/classes/com/sun/org/apache/xml/internal/utils/DefaultErrorHandler.java - src/share/classes/com/sun/org/apache/xml/internal/utils/ElemDesc.java - src/share/classes/com/sun/org/apache/xml/internal/utils/FastStringBuffer.java - src/share/classes/com/sun/org/apache/xml/internal/utils/Hashtree2Node.java - src/share/classes/com/sun/org/apache/xml/internal/utils/IntStack.java - src/share/classes/com/sun/org/apache/xml/internal/utils/IntVector.java - src/share/classes/com/sun/org/apache/xml/internal/utils/ListingErrorHandler.java - src/share/classes/com/sun/org/apache/xml/internal/utils/LocaleUtility.java - src/share/classes/com/sun/org/apache/xml/internal/utils/MutableAttrListImpl.java - src/share/classes/com/sun/org/apache/xml/internal/utils/NSInfo.java - src/share/classes/com/sun/org/apache/xml/internal/utils/NameSpace.java - src/share/classes/com/sun/org/apache/xml/internal/utils/NamespaceSupport2.java - src/share/classes/com/sun/org/apache/xml/internal/utils/NodeConsumer.java - src/share/classes/com/sun/org/apache/xml/internal/utils/NodeVector.java - src/share/classes/com/sun/org/apache/xml/internal/utils/ObjectFactory.java - src/share/classes/com/sun/org/apache/xml/internal/utils/ObjectPool.java - src/share/classes/com/sun/org/apache/xml/internal/utils/ObjectStack.java - src/share/classes/com/sun/org/apache/xml/internal/utils/ObjectVector.java - src/share/classes/com/sun/org/apache/xml/internal/utils/PrefixResolver.java - src/share/classes/com/sun/org/apache/xml/internal/utils/PrefixResolverDefault.java - src/share/classes/com/sun/org/apache/xml/internal/utils/QName.java - src/share/classes/com/sun/org/apache/xml/internal/utils/RawCharacterHandler.java - src/share/classes/com/sun/org/apache/xml/internal/utils/SAXSourceLocator.java - src/share/classes/com/sun/org/apache/xml/internal/utils/SecuritySupport.java - src/share/classes/com/sun/org/apache/xml/internal/utils/SecuritySupport12.java - src/share/classes/com/sun/org/apache/xml/internal/utils/SerializableLocatorImpl.java - src/share/classes/com/sun/org/apache/xml/internal/utils/StopParseException.java - src/share/classes/com/sun/org/apache/xml/internal/utils/StringBufferPool.java - src/share/classes/com/sun/org/apache/xml/internal/utils/StringComparable.java - src/share/classes/com/sun/org/apache/xml/internal/utils/StringToIntTable.java - src/share/classes/com/sun/org/apache/xml/internal/utils/StringToStringTable.java - src/share/classes/com/sun/org/apache/xml/internal/utils/StringToStringTableVector.java - src/share/classes/com/sun/org/apache/xml/internal/utils/StringVector.java - src/share/classes/com/sun/org/apache/xml/internal/utils/StylesheetPIHandler.java - src/share/classes/com/sun/org/apache/xml/internal/utils/SuballocatedByteVector.java - src/share/classes/com/sun/org/apache/xml/internal/utils/SuballocatedIntVector.java - src/share/classes/com/sun/org/apache/xml/internal/utils/SystemIDResolver.java - src/share/classes/com/sun/org/apache/xml/internal/utils/ThreadControllerWrapper.java - src/share/classes/com/sun/org/apache/xml/internal/utils/TreeWalker.java - src/share/classes/com/sun/org/apache/xml/internal/utils/Trie.java - src/share/classes/com/sun/org/apache/xml/internal/utils/URI.java - src/share/classes/com/sun/org/apache/xml/internal/utils/UnImplNode.java - src/share/classes/com/sun/org/apache/xml/internal/utils/WrappedRuntimeException.java - src/share/classes/com/sun/org/apache/xml/internal/utils/WrongParserException.java - src/share/classes/com/sun/org/apache/xml/internal/utils/XML11Char.java - src/share/classes/com/sun/org/apache/xml/internal/utils/XMLChar.java - src/share/classes/com/sun/org/apache/xml/internal/utils/XMLCharacterRecognizer.java - src/share/classes/com/sun/org/apache/xml/internal/utils/XMLReaderManager.java - src/share/classes/com/sun/org/apache/xml/internal/utils/XMLString.java - src/share/classes/com/sun/org/apache/xml/internal/utils/XMLStringDefault.java - src/share/classes/com/sun/org/apache/xml/internal/utils/XMLStringFactory.java - src/share/classes/com/sun/org/apache/xml/internal/utils/XMLStringFactoryDefault.java - src/share/classes/com/sun/org/apache/xml/internal/utils/package.html - src/share/classes/com/sun/org/apache/xml/internal/utils/res/CharArrayWrapper.java - src/share/classes/com/sun/org/apache/xml/internal/utils/res/IntArrayWrapper.java - src/share/classes/com/sun/org/apache/xml/internal/utils/res/LongArrayWrapper.java - src/share/classes/com/sun/org/apache/xml/internal/utils/res/StringArrayWrapper.java - src/share/classes/com/sun/org/apache/xml/internal/utils/res/XResourceBundle.java - src/share/classes/com/sun/org/apache/xml/internal/utils/res/XResourceBundleBase.java - src/share/classes/com/sun/org/apache/xml/internal/utils/res/XResources_de.java - src/share/classes/com/sun/org/apache/xml/internal/utils/res/XResources_en.java - src/share/classes/com/sun/org/apache/xml/internal/utils/res/XResources_es.java - src/share/classes/com/sun/org/apache/xml/internal/utils/res/XResources_fr.java - src/share/classes/com/sun/org/apache/xml/internal/utils/res/XResources_it.java - src/share/classes/com/sun/org/apache/xml/internal/utils/res/XResources_ja_JP_A.java - src/share/classes/com/sun/org/apache/xml/internal/utils/res/XResources_ja_JP_HA.java - src/share/classes/com/sun/org/apache/xml/internal/utils/res/XResources_ja_JP_HI.java - src/share/classes/com/sun/org/apache/xml/internal/utils/res/XResources_ja_JP_I.java - src/share/classes/com/sun/org/apache/xml/internal/utils/res/XResources_ko.java - src/share/classes/com/sun/org/apache/xml/internal/utils/res/XResources_sv.java - src/share/classes/com/sun/org/apache/xml/internal/utils/res/XResources_zh_CN.java - src/share/classes/com/sun/org/apache/xml/internal/utils/res/XResources_zh_TW.java - src/share/classes/com/sun/org/apache/xpath/internal/Arg.java - src/share/classes/com/sun/org/apache/xpath/internal/CachedXPathAPI.java - src/share/classes/com/sun/org/apache/xpath/internal/Expression.java - src/share/classes/com/sun/org/apache/xpath/internal/ExpressionNode.java - src/share/classes/com/sun/org/apache/xpath/internal/ExpressionOwner.java - src/share/classes/com/sun/org/apache/xpath/internal/ExtensionsProvider.java - src/share/classes/com/sun/org/apache/xpath/internal/FoundIndex.java - src/share/classes/com/sun/org/apache/xpath/internal/NodeSet.java - src/share/classes/com/sun/org/apache/xpath/internal/NodeSetDTM.java - src/share/classes/com/sun/org/apache/xpath/internal/SourceTree.java - src/share/classes/com/sun/org/apache/xpath/internal/SourceTreeManager.java - src/share/classes/com/sun/org/apache/xpath/internal/VariableStack.java - src/share/classes/com/sun/org/apache/xpath/internal/WhitespaceStrippingElementMatcher.java - src/share/classes/com/sun/org/apache/xpath/internal/XPath.java - src/share/classes/com/sun/org/apache/xpath/internal/XPathAPI.java - src/share/classes/com/sun/org/apache/xpath/internal/XPathContext.java - src/share/classes/com/sun/org/apache/xpath/internal/XPathException.java - src/share/classes/com/sun/org/apache/xpath/internal/XPathFactory.java - src/share/classes/com/sun/org/apache/xpath/internal/XPathProcessorException.java - src/share/classes/com/sun/org/apache/xpath/internal/XPathVisitable.java - src/share/classes/com/sun/org/apache/xpath/internal/XPathVisitor.java - src/share/classes/com/sun/org/apache/xpath/internal/axes/AttributeIterator.java - src/share/classes/com/sun/org/apache/xpath/internal/axes/AxesWalker.java - src/share/classes/com/sun/org/apache/xpath/internal/axes/BasicTestIterator.java - src/share/classes/com/sun/org/apache/xpath/internal/axes/ChildIterator.java - src/share/classes/com/sun/org/apache/xpath/internal/axes/ChildTestIterator.java - src/share/classes/com/sun/org/apache/xpath/internal/axes/ContextNodeList.java - src/share/classes/com/sun/org/apache/xpath/internal/axes/DescendantIterator.java - src/share/classes/com/sun/org/apache/xpath/internal/axes/FilterExprIterator.java - src/share/classes/com/sun/org/apache/xpath/internal/axes/FilterExprIteratorSimple.java - src/share/classes/com/sun/org/apache/xpath/internal/axes/FilterExprWalker.java - src/share/classes/com/sun/org/apache/xpath/internal/axes/HasPositionalPredChecker.java - src/share/classes/com/sun/org/apache/xpath/internal/axes/IteratorPool.java - src/share/classes/com/sun/org/apache/xpath/internal/axes/LocPathIterator.java - src/share/classes/com/sun/org/apache/xpath/internal/axes/MatchPatternIterator.java - src/share/classes/com/sun/org/apache/xpath/internal/axes/NodeSequence.java - src/share/classes/com/sun/org/apache/xpath/internal/axes/OneStepIterator.java - src/share/classes/com/sun/org/apache/xpath/internal/axes/OneStepIteratorForward.java - src/share/classes/com/sun/org/apache/xpath/internal/axes/PathComponent.java - src/share/classes/com/sun/org/apache/xpath/internal/axes/PredicatedNodeTest.java - src/share/classes/com/sun/org/apache/xpath/internal/axes/RTFIterator.java - src/share/classes/com/sun/org/apache/xpath/internal/axes/ReverseAxesWalker.java - src/share/classes/com/sun/org/apache/xpath/internal/axes/SelfIteratorNoPredicate.java - src/share/classes/com/sun/org/apache/xpath/internal/axes/SubContextList.java - src/share/classes/com/sun/org/apache/xpath/internal/axes/UnionChildIterator.java - src/share/classes/com/sun/org/apache/xpath/internal/axes/UnionPathIterator.java - src/share/classes/com/sun/org/apache/xpath/internal/axes/WalkerFactory.java - src/share/classes/com/sun/org/apache/xpath/internal/axes/WalkingIterator.java - src/share/classes/com/sun/org/apache/xpath/internal/axes/WalkingIteratorSorted.java - src/share/classes/com/sun/org/apache/xpath/internal/axes/package.html - src/share/classes/com/sun/org/apache/xpath/internal/compiler/Compiler.java - src/share/classes/com/sun/org/apache/xpath/internal/compiler/FuncLoader.java - src/share/classes/com/sun/org/apache/xpath/internal/compiler/FunctionTable.java - src/share/classes/com/sun/org/apache/xpath/internal/compiler/Keywords.java - src/share/classes/com/sun/org/apache/xpath/internal/compiler/Lexer.java - src/share/classes/com/sun/org/apache/xpath/internal/compiler/ObjectFactory.java - src/share/classes/com/sun/org/apache/xpath/internal/compiler/OpCodes.java - src/share/classes/com/sun/org/apache/xpath/internal/compiler/OpMap.java - src/share/classes/com/sun/org/apache/xpath/internal/compiler/OpMapVector.java - src/share/classes/com/sun/org/apache/xpath/internal/compiler/PsuedoNames.java - src/share/classes/com/sun/org/apache/xpath/internal/compiler/SecuritySupport.java - src/share/classes/com/sun/org/apache/xpath/internal/compiler/SecuritySupport12.java - src/share/classes/com/sun/org/apache/xpath/internal/compiler/XPathDumper.java - src/share/classes/com/sun/org/apache/xpath/internal/compiler/XPathParser.java - src/share/classes/com/sun/org/apache/xpath/internal/compiler/package.html - src/share/classes/com/sun/org/apache/xpath/internal/domapi/XPathEvaluatorImpl.java - src/share/classes/com/sun/org/apache/xpath/internal/domapi/XPathExpressionImpl.java - src/share/classes/com/sun/org/apache/xpath/internal/domapi/XPathNSResolverImpl.java - src/share/classes/com/sun/org/apache/xpath/internal/domapi/XPathNamespaceImpl.java - src/share/classes/com/sun/org/apache/xpath/internal/domapi/XPathResultImpl.java - src/share/classes/com/sun/org/apache/xpath/internal/domapi/XPathStylesheetDOM3Exception.java - src/share/classes/com/sun/org/apache/xpath/internal/domapi/package.html - src/share/classes/com/sun/org/apache/xpath/internal/functions/FuncBoolean.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/FuncCeiling.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/FuncConcat.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/FuncContains.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/FuncCount.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/FuncCurrent.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/FuncDoclocation.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/FuncExtElementAvailable.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/FuncExtFunction.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/FuncExtFunctionAvailable.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/FuncFalse.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/FuncFloor.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/FuncGenerateId.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/FuncId.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/FuncLang.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/FuncLast.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/FuncLocalPart.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/FuncNamespace.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/FuncNormalizeSpace.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/FuncNot.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/FuncNumber.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/FuncPosition.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/FuncQname.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/FuncRound.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/FuncStartsWith.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/FuncString.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/FuncStringLength.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/FuncSubstring.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/FuncSubstringAfter.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/FuncSubstringBefore.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/FuncSum.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/FuncSystemProperty.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/FuncTranslate.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/FuncTrue.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/FuncUnparsedEntityURI.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/Function.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/Function2Args.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/Function3Args.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/FunctionDef1Arg.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/FunctionMultiArgs.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/FunctionOneArg.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/ObjectFactory.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/SecuritySupport.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/SecuritySupport12.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/WrongNumberArgsException.java - src/share/classes/com/sun/org/apache/xpath/internal/functions/package.html - src/share/classes/com/sun/org/apache/xpath/internal/jaxp/JAXPExtensionsProvider.java - src/share/classes/com/sun/org/apache/xpath/internal/jaxp/JAXPPrefixResolver.java - src/share/classes/com/sun/org/apache/xpath/internal/jaxp/JAXPVariableStack.java - src/share/classes/com/sun/org/apache/xpath/internal/jaxp/XPathExpressionImpl.java - src/share/classes/com/sun/org/apache/xpath/internal/jaxp/XPathFactoryImpl.java - src/share/classes/com/sun/org/apache/xpath/internal/jaxp/XPathImpl.java - src/share/classes/com/sun/org/apache/xpath/internal/objects/DTMXRTreeFrag.java - src/share/classes/com/sun/org/apache/xpath/internal/objects/XBoolean.java - src/share/classes/com/sun/org/apache/xpath/internal/objects/XBooleanStatic.java - src/share/classes/com/sun/org/apache/xpath/internal/objects/XMLStringFactoryImpl.java - src/share/classes/com/sun/org/apache/xpath/internal/objects/XNodeSet.java - src/share/classes/com/sun/org/apache/xpath/internal/objects/XNodeSetForDOM.java - src/share/classes/com/sun/org/apache/xpath/internal/objects/XNull.java - src/share/classes/com/sun/org/apache/xpath/internal/objects/XNumber.java - src/share/classes/com/sun/org/apache/xpath/internal/objects/XObject.java - src/share/classes/com/sun/org/apache/xpath/internal/objects/XObjectFactory.java - src/share/classes/com/sun/org/apache/xpath/internal/objects/XRTreeFrag.java - src/share/classes/com/sun/org/apache/xpath/internal/objects/XRTreeFragSelectWrapper.java - src/share/classes/com/sun/org/apache/xpath/internal/objects/XString.java - src/share/classes/com/sun/org/apache/xpath/internal/objects/XStringForChars.java - src/share/classes/com/sun/org/apache/xpath/internal/objects/XStringForFSB.java - src/share/classes/com/sun/org/apache/xpath/internal/objects/package.html - src/share/classes/com/sun/org/apache/xpath/internal/operations/And.java - src/share/classes/com/sun/org/apache/xpath/internal/operations/Bool.java - src/share/classes/com/sun/org/apache/xpath/internal/operations/Div.java - src/share/classes/com/sun/org/apache/xpath/internal/operations/Equals.java - src/share/classes/com/sun/org/apache/xpath/internal/operations/Gt.java - src/share/classes/com/sun/org/apache/xpath/internal/operations/Gte.java - src/share/classes/com/sun/org/apache/xpath/internal/operations/Lt.java - src/share/classes/com/sun/org/apache/xpath/internal/operations/Lte.java - src/share/classes/com/sun/org/apache/xpath/internal/operations/Minus.java - src/share/classes/com/sun/org/apache/xpath/internal/operations/Mod.java - src/share/classes/com/sun/org/apache/xpath/internal/operations/Mult.java - src/share/classes/com/sun/org/apache/xpath/internal/operations/Neg.java - src/share/classes/com/sun/org/apache/xpath/internal/operations/NotEquals.java - src/share/classes/com/sun/org/apache/xpath/internal/operations/Number.java - src/share/classes/com/sun/org/apache/xpath/internal/operations/Operation.java - src/share/classes/com/sun/org/apache/xpath/internal/operations/Or.java - src/share/classes/com/sun/org/apache/xpath/internal/operations/Plus.java - src/share/classes/com/sun/org/apache/xpath/internal/operations/Quo.java - src/share/classes/com/sun/org/apache/xpath/internal/operations/String.java - src/share/classes/com/sun/org/apache/xpath/internal/operations/UnaryOperation.java - src/share/classes/com/sun/org/apache/xpath/internal/operations/Variable.java - src/share/classes/com/sun/org/apache/xpath/internal/operations/VariableSafeAbsRef.java - src/share/classes/com/sun/org/apache/xpath/internal/operations/package.html - src/share/classes/com/sun/org/apache/xpath/internal/package.html - src/share/classes/com/sun/org/apache/xpath/internal/patterns/ContextMatchStepPattern.java - src/share/classes/com/sun/org/apache/xpath/internal/patterns/FunctionPattern.java - src/share/classes/com/sun/org/apache/xpath/internal/patterns/NodeTest.java - src/share/classes/com/sun/org/apache/xpath/internal/patterns/NodeTestFilter.java - src/share/classes/com/sun/org/apache/xpath/internal/patterns/StepPattern.java - src/share/classes/com/sun/org/apache/xpath/internal/patterns/UnionPattern.java - src/share/classes/com/sun/org/apache/xpath/internal/patterns/package.html - src/share/classes/com/sun/org/apache/xpath/internal/res/XPATHErrorResources.java - src/share/classes/com/sun/org/apache/xpath/internal/res/XPATHErrorResources_de.java - src/share/classes/com/sun/org/apache/xpath/internal/res/XPATHErrorResources_en.java - src/share/classes/com/sun/org/apache/xpath/internal/res/XPATHErrorResources_es.java - src/share/classes/com/sun/org/apache/xpath/internal/res/XPATHErrorResources_fr.java - src/share/classes/com/sun/org/apache/xpath/internal/res/XPATHErrorResources_it.java - src/share/classes/com/sun/org/apache/xpath/internal/res/XPATHErrorResources_ja.java - src/share/classes/com/sun/org/apache/xpath/internal/res/XPATHErrorResources_ko.java - src/share/classes/com/sun/org/apache/xpath/internal/res/XPATHErrorResources_pt_BR.java - src/share/classes/com/sun/org/apache/xpath/internal/res/XPATHErrorResources_sv.java - src/share/classes/com/sun/org/apache/xpath/internal/res/XPATHErrorResources_zh_CN.java - src/share/classes/com/sun/org/apache/xpath/internal/res/XPATHErrorResources_zh_TW.java - src/share/classes/com/sun/org/apache/xpath/internal/res/XPATHMessages.java - src/share/classes/com/sun/org/apache/xpath/internal/res/package.html - src/share/classes/com/sun/xml/internal/stream/Entity.java - src/share/classes/com/sun/xml/internal/stream/EventFilterSupport.java - src/share/classes/com/sun/xml/internal/stream/StaxEntityResolverWrapper.java - src/share/classes/com/sun/xml/internal/stream/StaxErrorReporter.java - src/share/classes/com/sun/xml/internal/stream/StaxXMLInputSource.java - src/share/classes/com/sun/xml/internal/stream/XMLBufferListener.java - src/share/classes/com/sun/xml/internal/stream/XMLEntityReader.java - src/share/classes/com/sun/xml/internal/stream/XMLEntityStorage.java - src/share/classes/com/sun/xml/internal/stream/XMLEventReaderImpl.java - src/share/classes/com/sun/xml/internal/stream/XMLInputFactoryImpl.java - src/share/classes/com/sun/xml/internal/stream/XMLOutputFactoryImpl.java - src/share/classes/com/sun/xml/internal/stream/dtd/DTDGrammarUtil.java - src/share/classes/com/sun/xml/internal/stream/dtd/nonvalidating/DTDGrammar.java - src/share/classes/com/sun/xml/internal/stream/dtd/nonvalidating/XMLAttributeDecl.java - src/share/classes/com/sun/xml/internal/stream/dtd/nonvalidating/XMLElementDecl.java - src/share/classes/com/sun/xml/internal/stream/dtd/nonvalidating/XMLNotationDecl.java - src/share/classes/com/sun/xml/internal/stream/dtd/nonvalidating/XMLSimpleType.java - src/share/classes/com/sun/xml/internal/stream/events/AttributeImpl.java - src/share/classes/com/sun/xml/internal/stream/events/CharacterEvent.java - src/share/classes/com/sun/xml/internal/stream/events/CommentEvent.java - src/share/classes/com/sun/xml/internal/stream/events/DTDEvent.java - src/share/classes/com/sun/xml/internal/stream/events/DummyEvent.java - src/share/classes/com/sun/xml/internal/stream/events/EndDocumentEvent.java - src/share/classes/com/sun/xml/internal/stream/events/EndElementEvent.java - src/share/classes/com/sun/xml/internal/stream/events/EntityDeclarationImpl.java - src/share/classes/com/sun/xml/internal/stream/events/EntityReferenceEvent.java - src/share/classes/com/sun/xml/internal/stream/events/LocationImpl.java - src/share/classes/com/sun/xml/internal/stream/events/NamedEvent.java - src/share/classes/com/sun/xml/internal/stream/events/NamespaceImpl.java - src/share/classes/com/sun/xml/internal/stream/events/NotationDeclarationImpl.java - src/share/classes/com/sun/xml/internal/stream/events/ProcessingInstructionEvent.java - src/share/classes/com/sun/xml/internal/stream/events/StartDocumentEvent.java - src/share/classes/com/sun/xml/internal/stream/events/StartElementEvent.java - src/share/classes/com/sun/xml/internal/stream/events/XMLEventAllocatorImpl.java - src/share/classes/com/sun/xml/internal/stream/events/XMLEventFactoryImpl.java - src/share/classes/com/sun/xml/internal/stream/javax.xml.stream.XMLEventFactory - src/share/classes/com/sun/xml/internal/stream/javax.xml.stream.XMLInputFactory - src/share/classes/com/sun/xml/internal/stream/javax.xml.stream.XMLOutputFactory - src/share/classes/com/sun/xml/internal/stream/util/BufferAllocator.java - src/share/classes/com/sun/xml/internal/stream/util/ReadOnlyIterator.java - src/share/classes/com/sun/xml/internal/stream/util/ThreadLocalBufferAllocator.java - src/share/classes/com/sun/xml/internal/stream/writers/UTF8OutputStreamWriter.java - src/share/classes/com/sun/xml/internal/stream/writers/WriterUtility.java - src/share/classes/com/sun/xml/internal/stream/writers/XMLDOMWriterImpl.java - src/share/classes/com/sun/xml/internal/stream/writers/XMLEventWriterImpl.java - src/share/classes/com/sun/xml/internal/stream/writers/XMLOutputSource.java - src/share/classes/com/sun/xml/internal/stream/writers/XMLStreamWriterImpl.java - src/share/classes/com/sun/xml/internal/stream/writers/XMLWriter.java - src/share/classes/javax/xml/XMLConstants.java - src/share/classes/javax/xml/datatype/DatatypeConfigurationException.java - src/share/classes/javax/xml/datatype/DatatypeConstants.java - src/share/classes/javax/xml/datatype/DatatypeFactory.java - src/share/classes/javax/xml/datatype/Duration.java - src/share/classes/javax/xml/datatype/FactoryFinder.java - src/share/classes/javax/xml/datatype/SecuritySupport.java - src/share/classes/javax/xml/datatype/XMLGregorianCalendar.java - src/share/classes/javax/xml/datatype/package.html - src/share/classes/javax/xml/namespace/NamespaceContext.java - src/share/classes/javax/xml/namespace/QName.java - src/share/classes/javax/xml/namespace/package.html - src/share/classes/javax/xml/parsers/DocumentBuilder.java - src/share/classes/javax/xml/parsers/DocumentBuilderFactory.java - src/share/classes/javax/xml/parsers/FactoryConfigurationError.java - src/share/classes/javax/xml/parsers/FactoryFinder.java - src/share/classes/javax/xml/parsers/ParserConfigurationException.java - src/share/classes/javax/xml/parsers/SAXParser.java - src/share/classes/javax/xml/parsers/SAXParserFactory.java - src/share/classes/javax/xml/parsers/SecuritySupport.java - src/share/classes/javax/xml/parsers/package.html - src/share/classes/javax/xml/stream/EventFilter.java - src/share/classes/javax/xml/stream/FactoryConfigurationError.java - src/share/classes/javax/xml/stream/FactoryFinder.java - src/share/classes/javax/xml/stream/Location.java - src/share/classes/javax/xml/stream/SecuritySupport.java - src/share/classes/javax/xml/stream/StreamFilter.java - src/share/classes/javax/xml/stream/XMLEventFactory.java - src/share/classes/javax/xml/stream/XMLEventReader.java - src/share/classes/javax/xml/stream/XMLEventWriter.java - src/share/classes/javax/xml/stream/XMLInputFactory.java - src/share/classes/javax/xml/stream/XMLOutputFactory.java - src/share/classes/javax/xml/stream/XMLReporter.java - src/share/classes/javax/xml/stream/XMLResolver.java - src/share/classes/javax/xml/stream/XMLStreamConstants.java - src/share/classes/javax/xml/stream/XMLStreamException.java - src/share/classes/javax/xml/stream/XMLStreamReader.java - src/share/classes/javax/xml/stream/XMLStreamWriter.java - src/share/classes/javax/xml/stream/events/Attribute.java - src/share/classes/javax/xml/stream/events/Characters.java - src/share/classes/javax/xml/stream/events/Comment.java - src/share/classes/javax/xml/stream/events/DTD.java - src/share/classes/javax/xml/stream/events/EndDocument.java - src/share/classes/javax/xml/stream/events/EndElement.java - src/share/classes/javax/xml/stream/events/EntityDeclaration.java - src/share/classes/javax/xml/stream/events/EntityReference.java - src/share/classes/javax/xml/stream/events/Namespace.java - src/share/classes/javax/xml/stream/events/NotationDeclaration.java - src/share/classes/javax/xml/stream/events/ProcessingInstruction.java - src/share/classes/javax/xml/stream/events/StartDocument.java - src/share/classes/javax/xml/stream/events/StartElement.java - src/share/classes/javax/xml/stream/events/XMLEvent.java - src/share/classes/javax/xml/stream/util/EventReaderDelegate.java - src/share/classes/javax/xml/stream/util/StreamReaderDelegate.java - src/share/classes/javax/xml/stream/util/XMLEventAllocator.java - src/share/classes/javax/xml/stream/util/XMLEventConsumer.java - src/share/classes/javax/xml/transform/ErrorListener.java - src/share/classes/javax/xml/transform/FactoryFinder.java - src/share/classes/javax/xml/transform/OutputKeys.java - src/share/classes/javax/xml/transform/Result.java - src/share/classes/javax/xml/transform/SecuritySupport.java - src/share/classes/javax/xml/transform/Source.java - src/share/classes/javax/xml/transform/SourceLocator.java - src/share/classes/javax/xml/transform/Templates.java - src/share/classes/javax/xml/transform/Transformer.java - src/share/classes/javax/xml/transform/TransformerConfigurationException.java - src/share/classes/javax/xml/transform/TransformerException.java - src/share/classes/javax/xml/transform/TransformerFactory.java - src/share/classes/javax/xml/transform/TransformerFactoryConfigurationError.java - src/share/classes/javax/xml/transform/URIResolver.java - src/share/classes/javax/xml/transform/dom/DOMLocator.java - src/share/classes/javax/xml/transform/dom/DOMResult.java - src/share/classes/javax/xml/transform/dom/DOMSource.java - src/share/classes/javax/xml/transform/dom/package.html - src/share/classes/javax/xml/transform/overview.html - src/share/classes/javax/xml/transform/package.html - src/share/classes/javax/xml/transform/sax/SAXResult.java - src/share/classes/javax/xml/transform/sax/SAXSource.java - src/share/classes/javax/xml/transform/sax/SAXTransformerFactory.java - src/share/classes/javax/xml/transform/sax/TemplatesHandler.java - src/share/classes/javax/xml/transform/sax/TransformerHandler.java - src/share/classes/javax/xml/transform/sax/package.html - src/share/classes/javax/xml/transform/stax/StAXResult.java - src/share/classes/javax/xml/transform/stax/StAXSource.java - src/share/classes/javax/xml/transform/stax/package.html - src/share/classes/javax/xml/transform/stream/StreamResult.java - src/share/classes/javax/xml/transform/stream/StreamSource.java - src/share/classes/javax/xml/transform/stream/package.html - src/share/classes/javax/xml/validation/Schema.java - src/share/classes/javax/xml/validation/SchemaFactory.java - src/share/classes/javax/xml/validation/SchemaFactoryFinder.java - src/share/classes/javax/xml/validation/SchemaFactoryLoader.java - src/share/classes/javax/xml/validation/SecuritySupport.java - src/share/classes/javax/xml/validation/TypeInfoProvider.java - src/share/classes/javax/xml/validation/Validator.java - src/share/classes/javax/xml/validation/ValidatorHandler.java - src/share/classes/javax/xml/validation/package.html - src/share/classes/javax/xml/xpath/SecuritySupport.java - src/share/classes/javax/xml/xpath/XPath.java - src/share/classes/javax/xml/xpath/XPathConstants.java - src/share/classes/javax/xml/xpath/XPathException.java - src/share/classes/javax/xml/xpath/XPathExpression.java - src/share/classes/javax/xml/xpath/XPathExpressionException.java - src/share/classes/javax/xml/xpath/XPathFactory.java - src/share/classes/javax/xml/xpath/XPathFactoryConfigurationException.java - src/share/classes/javax/xml/xpath/XPathFactoryFinder.java - src/share/classes/javax/xml/xpath/XPathFunction.java - src/share/classes/javax/xml/xpath/XPathFunctionException.java - src/share/classes/javax/xml/xpath/XPathFunctionResolver.java - src/share/classes/javax/xml/xpath/XPathVariableResolver.java - src/share/classes/javax/xml/xpath/package.html - src/share/classes/org/w3c/dom/Attr.java - src/share/classes/org/w3c/dom/CDATASection.java - src/share/classes/org/w3c/dom/CharacterData.java - src/share/classes/org/w3c/dom/Comment.java - src/share/classes/org/w3c/dom/DOMConfiguration.java - src/share/classes/org/w3c/dom/DOMError.java - src/share/classes/org/w3c/dom/DOMErrorHandler.java - src/share/classes/org/w3c/dom/DOMException.java - src/share/classes/org/w3c/dom/DOMImplementation.java - src/share/classes/org/w3c/dom/DOMImplementationList.java - src/share/classes/org/w3c/dom/DOMImplementationSource.java - src/share/classes/org/w3c/dom/DOMLocator.java - src/share/classes/org/w3c/dom/DOMStringList.java - src/share/classes/org/w3c/dom/Document.java - src/share/classes/org/w3c/dom/DocumentFragment.java - src/share/classes/org/w3c/dom/DocumentType.java - src/share/classes/org/w3c/dom/Element.java - src/share/classes/org/w3c/dom/Entity.java - src/share/classes/org/w3c/dom/EntityReference.java - src/share/classes/org/w3c/dom/NameList.java - src/share/classes/org/w3c/dom/NamedNodeMap.java - src/share/classes/org/w3c/dom/Node.java - src/share/classes/org/w3c/dom/NodeList.java - src/share/classes/org/w3c/dom/Notation.java - src/share/classes/org/w3c/dom/ProcessingInstruction.java - src/share/classes/org/w3c/dom/Text.java - src/share/classes/org/w3c/dom/TypeInfo.java - src/share/classes/org/w3c/dom/UserDataHandler.java - src/share/classes/org/w3c/dom/bootstrap/DOMImplementationRegistry.java - src/share/classes/org/w3c/dom/css/CSS2Properties.java - src/share/classes/org/w3c/dom/css/CSSCharsetRule.java - src/share/classes/org/w3c/dom/css/CSSFontFaceRule.java - src/share/classes/org/w3c/dom/css/CSSImportRule.java - src/share/classes/org/w3c/dom/css/CSSMediaRule.java - src/share/classes/org/w3c/dom/css/CSSPageRule.java - src/share/classes/org/w3c/dom/css/CSSPrimitiveValue.java - src/share/classes/org/w3c/dom/css/CSSRule.java - src/share/classes/org/w3c/dom/css/CSSRuleList.java - src/share/classes/org/w3c/dom/css/CSSStyleDeclaration.java - src/share/classes/org/w3c/dom/css/CSSStyleRule.java - src/share/classes/org/w3c/dom/css/CSSStyleSheet.java - src/share/classes/org/w3c/dom/css/CSSUnknownRule.java - src/share/classes/org/w3c/dom/css/CSSValue.java - src/share/classes/org/w3c/dom/css/CSSValueList.java - src/share/classes/org/w3c/dom/css/Counter.java - src/share/classes/org/w3c/dom/css/DOMImplementationCSS.java - src/share/classes/org/w3c/dom/css/DocumentCSS.java - src/share/classes/org/w3c/dom/css/ElementCSSInlineStyle.java - src/share/classes/org/w3c/dom/css/RGBColor.java - src/share/classes/org/w3c/dom/css/Rect.java - src/share/classes/org/w3c/dom/css/ViewCSS.java - src/share/classes/org/w3c/dom/events/DocumentEvent.java - src/share/classes/org/w3c/dom/events/Event.java - src/share/classes/org/w3c/dom/events/EventException.java - src/share/classes/org/w3c/dom/events/EventListener.java - src/share/classes/org/w3c/dom/events/EventTarget.java - src/share/classes/org/w3c/dom/events/MouseEvent.java - src/share/classes/org/w3c/dom/events/MutationEvent.java - src/share/classes/org/w3c/dom/events/UIEvent.java - src/share/classes/org/w3c/dom/html/HTMLAnchorElement.java - src/share/classes/org/w3c/dom/html/HTMLAppletElement.java - src/share/classes/org/w3c/dom/html/HTMLAreaElement.java - src/share/classes/org/w3c/dom/html/HTMLBRElement.java - src/share/classes/org/w3c/dom/html/HTMLBaseElement.java - src/share/classes/org/w3c/dom/html/HTMLBaseFontElement.java - src/share/classes/org/w3c/dom/html/HTMLBodyElement.java - src/share/classes/org/w3c/dom/html/HTMLButtonElement.java - src/share/classes/org/w3c/dom/html/HTMLCollection.java - src/share/classes/org/w3c/dom/html/HTMLDListElement.java - src/share/classes/org/w3c/dom/html/HTMLDOMImplementation.java - src/share/classes/org/w3c/dom/html/HTMLDirectoryElement.java - src/share/classes/org/w3c/dom/html/HTMLDivElement.java - src/share/classes/org/w3c/dom/html/HTMLDocument.java - src/share/classes/org/w3c/dom/html/HTMLElement.java - src/share/classes/org/w3c/dom/html/HTMLFieldSetElement.java - src/share/classes/org/w3c/dom/html/HTMLFontElement.java - src/share/classes/org/w3c/dom/html/HTMLFormElement.java - src/share/classes/org/w3c/dom/html/HTMLFrameElement.java - src/share/classes/org/w3c/dom/html/HTMLFrameSetElement.java - src/share/classes/org/w3c/dom/html/HTMLHRElement.java - src/share/classes/org/w3c/dom/html/HTMLHeadElement.java - src/share/classes/org/w3c/dom/html/HTMLHeadingElement.java - src/share/classes/org/w3c/dom/html/HTMLHtmlElement.java - src/share/classes/org/w3c/dom/html/HTMLIFrameElement.java - src/share/classes/org/w3c/dom/html/HTMLImageElement.java - src/share/classes/org/w3c/dom/html/HTMLInputElement.java - src/share/classes/org/w3c/dom/html/HTMLIsIndexElement.java - src/share/classes/org/w3c/dom/html/HTMLLIElement.java - src/share/classes/org/w3c/dom/html/HTMLLabelElement.java - src/share/classes/org/w3c/dom/html/HTMLLegendElement.java - src/share/classes/org/w3c/dom/html/HTMLLinkElement.java - src/share/classes/org/w3c/dom/html/HTMLMapElement.java - src/share/classes/org/w3c/dom/html/HTMLMenuElement.java - src/share/classes/org/w3c/dom/html/HTMLMetaElement.java - src/share/classes/org/w3c/dom/html/HTMLModElement.java - src/share/classes/org/w3c/dom/html/HTMLOListElement.java - src/share/classes/org/w3c/dom/html/HTMLObjectElement.java - src/share/classes/org/w3c/dom/html/HTMLOptGroupElement.java - src/share/classes/org/w3c/dom/html/HTMLOptionElement.java - src/share/classes/org/w3c/dom/html/HTMLParagraphElement.java - src/share/classes/org/w3c/dom/html/HTMLParamElement.java - src/share/classes/org/w3c/dom/html/HTMLPreElement.java - src/share/classes/org/w3c/dom/html/HTMLQuoteElement.java - src/share/classes/org/w3c/dom/html/HTMLScriptElement.java - src/share/classes/org/w3c/dom/html/HTMLSelectElement.java - src/share/classes/org/w3c/dom/html/HTMLStyleElement.java - src/share/classes/org/w3c/dom/html/HTMLTableCaptionElement.java - src/share/classes/org/w3c/dom/html/HTMLTableCellElement.java - src/share/classes/org/w3c/dom/html/HTMLTableColElement.java - src/share/classes/org/w3c/dom/html/HTMLTableElement.java - src/share/classes/org/w3c/dom/html/HTMLTableRowElement.java - src/share/classes/org/w3c/dom/html/HTMLTableSectionElement.java - src/share/classes/org/w3c/dom/html/HTMLTextAreaElement.java - src/share/classes/org/w3c/dom/html/HTMLTitleElement.java - src/share/classes/org/w3c/dom/html/HTMLUListElement.java - src/share/classes/org/w3c/dom/ls/DOMImplementationLS.java - src/share/classes/org/w3c/dom/ls/LSException.java - src/share/classes/org/w3c/dom/ls/LSInput.java - src/share/classes/org/w3c/dom/ls/LSLoadEvent.java - src/share/classes/org/w3c/dom/ls/LSOutput.java - src/share/classes/org/w3c/dom/ls/LSParser.java - src/share/classes/org/w3c/dom/ls/LSParserFilter.java - src/share/classes/org/w3c/dom/ls/LSProgressEvent.java - src/share/classes/org/w3c/dom/ls/LSResourceResolver.java - src/share/classes/org/w3c/dom/ls/LSSerializer.java - src/share/classes/org/w3c/dom/ls/LSSerializerFilter.java - src/share/classes/org/w3c/dom/package.html - src/share/classes/org/w3c/dom/ranges/DocumentRange.java - src/share/classes/org/w3c/dom/ranges/Range.java - src/share/classes/org/w3c/dom/ranges/RangeException.java - src/share/classes/org/w3c/dom/ranges/package.html - src/share/classes/org/w3c/dom/stylesheets/DocumentStyle.java - src/share/classes/org/w3c/dom/stylesheets/LinkStyle.java - src/share/classes/org/w3c/dom/stylesheets/MediaList.java - src/share/classes/org/w3c/dom/stylesheets/StyleSheet.java - src/share/classes/org/w3c/dom/stylesheets/StyleSheetList.java - src/share/classes/org/w3c/dom/traversal/DocumentTraversal.java - src/share/classes/org/w3c/dom/traversal/NodeFilter.java - src/share/classes/org/w3c/dom/traversal/NodeIterator.java - src/share/classes/org/w3c/dom/traversal/TreeWalker.java - src/share/classes/org/w3c/dom/views/AbstractView.java - src/share/classes/org/w3c/dom/views/DocumentView.java - src/share/classes/org/w3c/dom/xpath/COPYRIGHT.html - src/share/classes/org/w3c/dom/xpath/XPathEvaluator.java - src/share/classes/org/w3c/dom/xpath/XPathException.java - src/share/classes/org/w3c/dom/xpath/XPathExpression.java - src/share/classes/org/w3c/dom/xpath/XPathNSResolver.java - src/share/classes/org/w3c/dom/xpath/XPathNamespace.java - src/share/classes/org/w3c/dom/xpath/XPathResult.java - src/share/classes/org/xml/sax/AttributeList.java - src/share/classes/org/xml/sax/Attributes.java - src/share/classes/org/xml/sax/COPYING - src/share/classes/org/xml/sax/COPYING.txt - src/share/classes/org/xml/sax/ContentHandler.java - src/share/classes/org/xml/sax/DTDHandler.java - src/share/classes/org/xml/sax/DocumentHandler.java - src/share/classes/org/xml/sax/EntityResolver.java - src/share/classes/org/xml/sax/ErrorHandler.java - src/share/classes/org/xml/sax/HandlerBase.java - src/share/classes/org/xml/sax/InputSource.java - src/share/classes/org/xml/sax/Locator.java - src/share/classes/org/xml/sax/Parser.java - src/share/classes/org/xml/sax/SAXException.java - src/share/classes/org/xml/sax/SAXNotRecognizedException.java - src/share/classes/org/xml/sax/SAXNotSupportedException.java - src/share/classes/org/xml/sax/SAXParseException.java - src/share/classes/org/xml/sax/XMLFilter.java - src/share/classes/org/xml/sax/XMLReader.java - src/share/classes/org/xml/sax/ext/Attributes2.java - src/share/classes/org/xml/sax/ext/Attributes2Impl.java - src/share/classes/org/xml/sax/ext/DeclHandler.java - src/share/classes/org/xml/sax/ext/DefaultHandler2.java - src/share/classes/org/xml/sax/ext/EntityResolver2.java - src/share/classes/org/xml/sax/ext/LexicalHandler.java - src/share/classes/org/xml/sax/ext/Locator2.java - src/share/classes/org/xml/sax/ext/Locator2Impl.java - src/share/classes/org/xml/sax/ext/package.html - src/share/classes/org/xml/sax/helpers/AttributeListImpl.java - src/share/classes/org/xml/sax/helpers/AttributesImpl.java - src/share/classes/org/xml/sax/helpers/DefaultHandler.java - src/share/classes/org/xml/sax/helpers/LocatorImpl.java - src/share/classes/org/xml/sax/helpers/NamespaceSupport.java - src/share/classes/org/xml/sax/helpers/NewInstance.java - src/share/classes/org/xml/sax/helpers/ParserAdapter.java - src/share/classes/org/xml/sax/helpers/ParserFactory.java - src/share/classes/org/xml/sax/helpers/XMLFilterImpl.java - src/share/classes/org/xml/sax/helpers/XMLReaderAdapter.java - src/share/classes/org/xml/sax/helpers/XMLReaderFactory.java - src/share/classes/org/xml/sax/helpers/package.html - src/share/classes/org/xml/sax/package.html From lana.steuck at oracle.com Thu Apr 26 23:30:24 2012 From: lana.steuck at oracle.com (lana.steuck at oracle.com) Date: Thu, 26 Apr 2012 23:30:24 +0000 Subject: hg: jdk8/tl/hotspot: 38 new changesets Message-ID: <20120426233157.6A6EF4729B@hg.openjdk.java.net> Changeset: e02867d10860 Author: amurillo Date: 2012-03-30 14:18 -0700 URL: http://hg.openjdk.java.net/jdk8/tl/hotspot/rev/e02867d10860 7158137: new hotspot build - hs24-b07 Reviewed-by: jcoomes ! make/hotspot_version Changeset: 51612f0c0a79 Author: nloodin Date: 2012-03-15 13:37 +0100 URL: http://hg.openjdk.java.net/jdk8/tl/hotspot/rev/51612f0c0a79 7148488: Whitebox tests for the Diagnostic Framework Parser Reviewed-by: brutisso, sla, mgerdin ! make/bsd/makefiles/wb.make ! make/linux/makefiles/wb.make ! make/solaris/makefiles/wb.make ! make/windows/create_obj_files.sh ! make/windows/makefiles/projectcreator.make ! make/windows/makefiles/vm.make ! make/windows/makefiles/wb.make ! src/share/tools/whitebox/sun/hotspot/WhiteBox.java + src/share/tools/whitebox/sun/hotspot/parser/DiagnosticCommand.java + src/share/vm/prims/wbtestmethods/parserTests.cpp + src/share/vm/prims/wbtestmethods/parserTests.hpp ! src/share/vm/prims/whitebox.cpp ! src/share/vm/prims/whitebox.hpp ! src/share/vm/services/diagnosticArgument.cpp ! src/share/vm/services/diagnosticArgument.hpp + test/serviceability/ParserTest.java Changeset: fc9d8850ab8b Author: coleenp Date: 2012-03-23 11:16 -0400 URL: http://hg.openjdk.java.net/jdk8/tl/hotspot/rev/fc9d8850ab8b 7150058: Allocate symbols from null boot loader to an arena for NMT Summary: Move symbol allocation to an arena so NMT doesn't have to track them at startup. Reviewed-by: never, kamg, zgu ! src/share/vm/classfile/classFileParser.cpp ! src/share/vm/classfile/classFileParser.hpp ! src/share/vm/classfile/symbolTable.cpp ! src/share/vm/classfile/symbolTable.hpp ! src/share/vm/classfile/vmSymbols.cpp ! src/share/vm/memory/dump.cpp ! src/share/vm/oops/objArrayKlassKlass.cpp ! src/share/vm/oops/symbol.cpp ! src/share/vm/oops/symbol.hpp ! src/share/vm/oops/typeArrayKlass.cpp ! src/share/vm/runtime/globals.hpp Changeset: a4ee440d71cc Author: acorn Date: 2012-03-27 15:28 -0400 URL: http://hg.openjdk.java.net/jdk8/tl/hotspot/rev/a4ee440d71cc Merge Changeset: 4bec1b1f7b33 Author: minqi Date: 2012-03-28 14:27 -0700 URL: http://hg.openjdk.java.net/jdk8/tl/hotspot/rev/4bec1b1f7b33 7156960: Incorrect copyright headers in parts of the Serviceability agent Summary: Errant files added as part of 7088955 fix. The Copyright information now corrected with gpl-header template Reviewed-by: sla, ohair, mbykov ! agent/src/share/classes/sun/jvm/hotspot/oops/ArrayData.java ! agent/src/share/classes/sun/jvm/hotspot/oops/BranchData.java ! agent/src/share/classes/sun/jvm/hotspot/oops/CounterData.java ! agent/src/share/classes/sun/jvm/hotspot/oops/DataLayout.java ! agent/src/share/classes/sun/jvm/hotspot/oops/JumpData.java ! agent/src/share/classes/sun/jvm/hotspot/oops/MultiBranchData.java ! agent/src/share/classes/sun/jvm/hotspot/oops/ReceiverTypeData.java ! agent/src/share/classes/sun/jvm/hotspot/oops/VirtualCallData.java Changeset: 9a5bef0481c8 Author: fparain Date: 2012-03-29 02:12 -0700 URL: http://hg.openjdk.java.net/jdk8/tl/hotspot/rev/9a5bef0481c8 7087969: GarbageCollectorMXBean notification contains ticks vs millis Reviewed-by: acorn, dcubed, rbackman ! src/share/vm/services/gcNotifier.cpp Changeset: 749b1464aa81 Author: acorn Date: 2012-04-01 17:04 -0400 URL: http://hg.openjdk.java.net/jdk8/tl/hotspot/rev/749b1464aa81 Merge ! src/share/vm/classfile/classFileParser.cpp ! src/share/vm/classfile/classFileParser.hpp ! src/share/vm/memory/dump.cpp Changeset: fd09f2d8283e Author: never Date: 2012-04-02 16:05 -0700 URL: http://hg.openjdk.java.net/jdk8/tl/hotspot/rev/fd09f2d8283e 7157141: crash in 64 bit with corrupted oops Reviewed-by: kvn, iveresov ! src/cpu/x86/vm/assembler_x86.cpp ! src/cpu/x86/vm/x86_64.ad ! src/share/vm/memory/barrierSet.hpp ! src/share/vm/memory/cardTableModRefBS.cpp ! src/share/vm/memory/cardTableModRefBS.hpp ! src/share/vm/utilities/vmError.cpp Changeset: 7e6005056e56 Author: never Date: 2012-04-05 15:08 -0700 URL: http://hg.openjdk.java.net/jdk8/tl/hotspot/rev/7e6005056e56 Merge Changeset: 500023bd0818 Author: johnc Date: 2012-03-13 11:05 -0700 URL: http://hg.openjdk.java.net/jdk8/tl/hotspot/rev/500023bd0818 7143511: G1: Another instance of high GC Worker Other time (50ms) Summary: Tiered compilation has increased the number of nmethods in the code cache. This has, in turn, significantly increased the number of marked nmethods processed during the StrongRootsScope destructor. Create a specialized version of CodeBlobToOopClosure for G1 which places only those nmethods that contain pointers into the collection set on to the marked nmethods list. Reviewed-by: iveresov, tonyp ! src/share/vm/code/nmethod.hpp ! src/share/vm/gc_implementation/g1/g1CollectedHeap.cpp ! src/share/vm/gc_implementation/g1/g1CollectorPolicy.cpp ! src/share/vm/gc_implementation/g1/g1CollectorPolicy.hpp Changeset: 748051fd24ce Author: brutisso Date: 2012-03-16 09:52 +0100 URL: http://hg.openjdk.java.net/jdk8/tl/hotspot/rev/748051fd24ce 7130974: G1: Remove G1ParCopyHelper Reviewed-by: tonyp, johnc ! src/share/vm/gc_implementation/g1/g1CollectedHeap.cpp ! src/share/vm/gc_implementation/g1/g1CollectedHeap.hpp ! src/share/vm/gc_implementation/g1/g1OopClosures.hpp Changeset: 2a0172480595 Author: tonyp Date: 2012-04-05 13:57 -0400 URL: http://hg.openjdk.java.net/jdk8/tl/hotspot/rev/2a0172480595 7127697: G1: remove dead code after recent concurrent mark changes Summary: Removed lots of dead code after some recent conc mark changes. Reviewed-by: brutisso, johnc ! src/share/vm/gc_implementation/g1/concurrentMark.cpp ! src/share/vm/gc_implementation/g1/concurrentMark.hpp ! src/share/vm/gc_implementation/g1/g1CollectedHeap.hpp ! src/share/vm/gc_implementation/g1/g1CollectorPolicy.cpp ! src/share/vm/gc_implementation/g1/g1CollectorPolicy.hpp ! src/share/vm/gc_implementation/g1/g1_globals.hpp ! src/share/vm/gc_implementation/g1/heapRegion.hpp ! src/share/vm/utilities/bitMap.cpp ! src/share/vm/utilities/bitMap.hpp Changeset: fafd94fe0da4 Author: johnc Date: 2012-04-06 09:48 -0700 URL: http://hg.openjdk.java.net/jdk8/tl/hotspot/rev/fafd94fe0da4 Merge Changeset: 7c6aba65acd2 Author: amurillo Date: 2012-04-07 08:26 -0700 URL: http://hg.openjdk.java.net/jdk8/tl/hotspot/rev/7c6aba65acd2 Merge Changeset: f284b0883558 Author: amurillo Date: 2012-04-07 08:26 -0700 URL: http://hg.openjdk.java.net/jdk8/tl/hotspot/rev/f284b0883558 Added tag hs24-b07 for changeset 7c6aba65acd2 ! .hgtags Changeset: f621660a297b Author: katleman Date: 2012-04-12 09:34 -0700 URL: http://hg.openjdk.java.net/jdk8/tl/hotspot/rev/f621660a297b Added tag jdk8-b34 for changeset f284b0883558 ! .hgtags Changeset: dce0525b7ee5 Author: katleman Date: 2012-04-19 12:18 -0700 URL: http://hg.openjdk.java.net/jdk8/tl/hotspot/rev/dce0525b7ee5 Added tag jdk8-b35 for changeset f621660a297b ! .hgtags Changeset: 4a32c51458b9 Author: amurillo Date: 2012-04-07 09:06 -0700 URL: http://hg.openjdk.java.net/jdk8/tl/hotspot/rev/4a32c51458b9 7159842: new hotspot build - hs24-b08 Reviewed-by: jcoomes ! make/hotspot_version Changeset: 19e197e2a1af Author: coleenp Date: 2012-04-05 12:17 -0400 URL: http://hg.openjdk.java.net/jdk8/tl/hotspot/rev/19e197e2a1af 7158988: jvm crashes while debugging on x86_32 and x86_64 Summary: Object pointer is pushed more than once on stack, where GC doesn't expect it. Reviewed-by: coleenp, kvn Contributed-by: axel.siebenborn at sap.com ! src/cpu/x86/vm/templateTable_x86_32.cpp ! src/cpu/x86/vm/templateTable_x86_64.cpp + test/runtime/7158988/FieldMonitor.java + test/runtime/7158988/TestFieldMonitor.sh + test/runtime/7158988/TestPostFieldModification.java Changeset: a4b63a58d295 Author: dcubed Date: 2012-04-09 08:38 -0700 URL: http://hg.openjdk.java.net/jdk8/tl/hotspot/rev/a4b63a58d295 Merge Changeset: 10c12fb36ed2 Author: sla Date: 2012-04-05 14:16 +0200 URL: http://hg.openjdk.java.net/jdk8/tl/hotspot/rev/10c12fb36ed2 7133111: libsaproc debug print should be printed as unsigned long to fit large numbers on 64bit platform Reviewed-by: dcubed, mgronlun, dsamersoff ! agent/src/os/linux/ps_core.c Changeset: 49036505ab5f Author: jiangli Date: 2012-03-29 22:18 -0400 URL: http://hg.openjdk.java.net/jdk8/tl/hotspot/rev/49036505ab5f 7154670: The instanceKlass _implementors[] and _nof_implementors are not needed for non-interface klass. Summary: Change implementor to embedded instanceKlass field. Reviewed-by: sspitsyn, minqi, coleenp ! agent/src/share/classes/sun/jvm/hotspot/jdi/VirtualMachineImpl.java ! agent/src/share/classes/sun/jvm/hotspot/oops/InstanceKlass.java ! src/share/vm/c1/c1_GraphBuilder.cpp ! src/share/vm/ci/ciInstanceKlass.cpp ! src/share/vm/ci/ciInstanceKlass.hpp ! src/share/vm/classfile/classFileParser.cpp ! src/share/vm/code/dependencies.cpp ! src/share/vm/memory/oopFactory.cpp ! src/share/vm/memory/oopFactory.hpp ! src/share/vm/oops/instanceKlass.cpp ! src/share/vm/oops/instanceKlass.hpp ! src/share/vm/oops/instanceKlassKlass.cpp ! src/share/vm/oops/instanceKlassKlass.hpp ! src/share/vm/runtime/vmStructs.cpp Changeset: 5809bf572ba3 Author: jcoomes Date: 2012-03-31 00:05 -0700 URL: http://hg.openjdk.java.net/jdk8/tl/hotspot/rev/5809bf572ba3 Merge Changeset: 08f8d00f2ae3 Author: bobv Date: 2012-04-10 13:27 -0400 URL: http://hg.openjdk.java.net/jdk8/tl/hotspot/rev/08f8d00f2ae3 Merge ! src/share/vm/classfile/classFileParser.cpp Changeset: 0cea7f13029e Author: dlong Date: 2012-04-12 18:41 -0400 URL: http://hg.openjdk.java.net/jdk8/tl/hotspot/rev/0cea7f13029e Merge Changeset: df4cd4aac5c1 Author: rbackman Date: 2012-04-12 13:24 +0200 URL: http://hg.openjdk.java.net/jdk8/tl/hotspot/rev/df4cd4aac5c1 7160924: jvmti: GetPhase returns incorrect phase before VMInit event is issued Reviewed-by: acorn, dcubed ! src/share/vm/runtime/thread.cpp Changeset: 27dab8a7c762 Author: coleenp Date: 2012-04-12 22:03 -0400 URL: http://hg.openjdk.java.net/jdk8/tl/hotspot/rev/27dab8a7c762 7160467: Fix test for 7158988 Summary: Ended up checking in FieldMonitor.java as TestPostFieldModification.java Reviewed-by: kamg ! test/runtime/7158988/TestPostFieldModification.java Changeset: 0f701f572aed Author: coleenp Date: 2012-04-13 08:11 -0700 URL: http://hg.openjdk.java.net/jdk8/tl/hotspot/rev/0f701f572aed Merge Changeset: c263e0e9f14b Author: dcubed Date: 2012-04-15 15:37 -0700 URL: http://hg.openjdk.java.net/jdk8/tl/hotspot/rev/c263e0e9f14b Merge Changeset: 0105f367a14c Author: rbackman Date: 2012-03-06 12:36 +0100 URL: http://hg.openjdk.java.net/jdk8/tl/hotspot/rev/0105f367a14c 7160570: Intrinsification support for tracing framework Reviewed-by: sla, never ! src/os/bsd/vm/osThread_bsd.hpp ! src/os/linux/vm/osThread_linux.hpp ! src/os/solaris/vm/osThread_solaris.hpp ! src/os/windows/vm/osThread_windows.hpp ! src/share/vm/c1/c1_GraphBuilder.cpp ! src/share/vm/c1/c1_LIRGenerator.cpp ! src/share/vm/c1/c1_LIRGenerator.hpp ! src/share/vm/c1/c1_Runtime1.cpp ! src/share/vm/classfile/vmSymbols.hpp ! src/share/vm/oops/instanceKlass.hpp ! src/share/vm/opto/library_call.cpp ! src/share/vm/opto/runtime.cpp ! src/share/vm/opto/runtime.hpp ! src/share/vm/runtime/osThread.hpp ! src/share/vm/trace/traceMacros.hpp Changeset: 5c86f8211d1e Author: brutisso Date: 2012-04-13 01:59 +0200 URL: http://hg.openjdk.java.net/jdk8/tl/hotspot/rev/5c86f8211d1e 7160728: Introduce an extra logging level for G1 logging Summary: Added log levels "fine", "finer" and "finest". Let PrintGC map to "fine" and PrintGCDetails map to "finer". Separated out the per worker information in the G1 logging to the "finest" level. Reviewed-by: stefank, jwilhelm, tonyp, johnc ! src/share/vm/gc_implementation/g1/concurrentMark.cpp ! src/share/vm/gc_implementation/g1/concurrentMarkThread.cpp ! src/share/vm/gc_implementation/g1/g1CollectedHeap.cpp ! src/share/vm/gc_implementation/g1/g1CollectorPolicy.cpp + src/share/vm/gc_implementation/g1/g1Log.cpp + src/share/vm/gc_implementation/g1/g1Log.hpp ! src/share/vm/gc_implementation/g1/g1MarkSweep.cpp ! src/share/vm/gc_implementation/g1/g1_globals.hpp ! src/share/vm/gc_implementation/g1/vm_operations_g1.cpp Changeset: b632e80fc9dc Author: brutisso Date: 2012-04-16 08:57 +0200 URL: http://hg.openjdk.java.net/jdk8/tl/hotspot/rev/b632e80fc9dc 4988100: oop_verify_old_oop appears to be dead Summary: removed oop_verify_old_oop and allow_dirty. Also reviewed by: alexlamsl at gmail.com Reviewed-by: jmasa, jwilhelm ! src/share/vm/gc_implementation/concurrentMarkSweep/compactibleFreeListSpace.cpp ! src/share/vm/gc_implementation/concurrentMarkSweep/compactibleFreeListSpace.hpp ! src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.cpp ! src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.hpp ! src/share/vm/gc_implementation/g1/concurrentMark.cpp ! src/share/vm/gc_implementation/g1/g1CollectedHeap.cpp ! src/share/vm/gc_implementation/g1/g1CollectedHeap.hpp ! src/share/vm/gc_implementation/g1/g1MarkSweep.cpp ! src/share/vm/gc_implementation/g1/heapRegion.cpp ! src/share/vm/gc_implementation/g1/heapRegion.hpp ! src/share/vm/gc_implementation/parallelScavenge/parallelScavengeHeap.cpp ! src/share/vm/gc_implementation/parallelScavenge/parallelScavengeHeap.hpp ! src/share/vm/gc_implementation/parallelScavenge/psOldGen.cpp ! src/share/vm/gc_implementation/parallelScavenge/psOldGen.hpp ! src/share/vm/gc_implementation/parallelScavenge/psYoungGen.cpp ! src/share/vm/gc_implementation/parallelScavenge/psYoungGen.hpp ! src/share/vm/gc_implementation/shared/immutableSpace.cpp ! src/share/vm/gc_implementation/shared/immutableSpace.hpp ! src/share/vm/gc_implementation/shared/mutableNUMASpace.cpp ! src/share/vm/gc_implementation/shared/mutableNUMASpace.hpp ! src/share/vm/gc_implementation/shared/mutableSpace.cpp ! src/share/vm/gc_implementation/shared/mutableSpace.hpp ! src/share/vm/gc_interface/collectedHeap.hpp ! src/share/vm/memory/compactingPermGenGen.cpp ! src/share/vm/memory/compactingPermGenGen.hpp ! src/share/vm/memory/defNewGeneration.cpp ! src/share/vm/memory/defNewGeneration.hpp ! src/share/vm/memory/genCollectedHeap.cpp ! src/share/vm/memory/genCollectedHeap.hpp ! src/share/vm/memory/generation.cpp ! src/share/vm/memory/generation.hpp ! src/share/vm/memory/space.cpp ! src/share/vm/memory/space.hpp ! src/share/vm/memory/universe.cpp ! src/share/vm/memory/universe.hpp ! src/share/vm/oops/instanceRefKlass.cpp ! src/share/vm/oops/klass.cpp ! src/share/vm/oops/klass.hpp ! src/share/vm/oops/objArrayKlass.cpp ! src/share/vm/oops/objArrayKlass.hpp ! src/share/vm/oops/oop.cpp ! src/share/vm/oops/oop.hpp ! src/share/vm/runtime/vmThread.cpp Changeset: dde53abda3d6 Author: stefank Date: 2012-04-11 16:18 +0200 URL: http://hg.openjdk.java.net/jdk8/tl/hotspot/rev/dde53abda3d6 7160613: VerifyRememberedSets doesn't work with CompressedOops Summary: use load_decode_heap_oop instead of load_decode_heap_oop_not_null Reviewed-by: tonyp, brutisso ! src/share/vm/gc_implementation/parallelScavenge/cardTableExtension.cpp Changeset: 720b6a76dd9d Author: tonyp Date: 2012-04-18 07:21 -0400 URL: http://hg.openjdk.java.net/jdk8/tl/hotspot/rev/720b6a76dd9d 7157073: G1: type change size_t -> uint for region counts / indexes Summary: Change the type of fields / variables / etc. that represent region counts and indeces from size_t to uint. Reviewed-by: iveresov, brutisso, jmasa, jwilhelm ! agent/src/share/classes/sun/jvm/hotspot/gc_implementation/g1/HeapRegionSeq.java ! agent/src/share/classes/sun/jvm/hotspot/gc_implementation/g1/HeapRegionSetBase.java ! src/share/vm/gc_implementation/g1/collectionSetChooser.cpp ! src/share/vm/gc_implementation/g1/collectionSetChooser.hpp ! src/share/vm/gc_implementation/g1/concurrentMark.cpp ! src/share/vm/gc_implementation/g1/concurrentMark.hpp ! src/share/vm/gc_implementation/g1/concurrentMark.inline.hpp ! src/share/vm/gc_implementation/g1/g1AllocRegion.cpp ! src/share/vm/gc_implementation/g1/g1AllocRegion.hpp ! src/share/vm/gc_implementation/g1/g1CollectedHeap.cpp ! src/share/vm/gc_implementation/g1/g1CollectedHeap.hpp ! src/share/vm/gc_implementation/g1/g1CollectorPolicy.cpp ! src/share/vm/gc_implementation/g1/g1CollectorPolicy.hpp ! src/share/vm/gc_implementation/g1/g1ErgoVerbose.hpp ! src/share/vm/gc_implementation/g1/g1MonitoringSupport.cpp ! src/share/vm/gc_implementation/g1/g1MonitoringSupport.hpp ! src/share/vm/gc_implementation/g1/heapRegion.cpp ! src/share/vm/gc_implementation/g1/heapRegion.hpp ! src/share/vm/gc_implementation/g1/heapRegionRemSet.cpp ! src/share/vm/gc_implementation/g1/heapRegionRemSet.hpp ! src/share/vm/gc_implementation/g1/heapRegionSeq.cpp ! src/share/vm/gc_implementation/g1/heapRegionSeq.hpp ! src/share/vm/gc_implementation/g1/heapRegionSeq.inline.hpp ! src/share/vm/gc_implementation/g1/heapRegionSet.cpp ! src/share/vm/gc_implementation/g1/heapRegionSet.hpp ! src/share/vm/gc_implementation/g1/heapRegionSet.inline.hpp ! src/share/vm/gc_implementation/g1/sparsePRT.cpp ! src/share/vm/gc_implementation/g1/vmStructs_g1.hpp Changeset: f7a8920427a6 Author: tonyp Date: 2012-04-18 13:39 -0400 URL: http://hg.openjdk.java.net/jdk8/tl/hotspot/rev/f7a8920427a6 7145441: G1: collection set chooser-related cleanup Summary: Cleanup of the CSet chooser class: standardize on uints for region num and indexes (instead of int, jint, etc.), make the method / field naming style more consistent, remove a lot of dead code. Reviewed-by: johnc, brutisso ! src/share/vm/gc_implementation/g1/collectionSetChooser.cpp ! src/share/vm/gc_implementation/g1/collectionSetChooser.hpp ! src/share/vm/gc_implementation/g1/concurrentMark.cpp ! src/share/vm/gc_implementation/g1/g1CollectedHeap.cpp ! src/share/vm/gc_implementation/g1/g1CollectorPolicy.cpp ! src/share/vm/gc_implementation/g1/g1CollectorPolicy.hpp ! src/share/vm/gc_implementation/g1/g1_globals.hpp ! src/share/vm/gc_implementation/g1/heapRegion.cpp ! src/share/vm/gc_implementation/g1/heapRegion.hpp Changeset: f3f101a5e59b Author: johnc Date: 2012-04-20 11:41 -0700 URL: http://hg.openjdk.java.net/jdk8/tl/hotspot/rev/f3f101a5e59b Merge Changeset: dff6e3459210 Author: amurillo Date: 2012-04-20 16:23 -0700 URL: http://hg.openjdk.java.net/jdk8/tl/hotspot/rev/dff6e3459210 Merge Changeset: 50b4400ca1ec Author: amurillo Date: 2012-04-20 16:23 -0700 URL: http://hg.openjdk.java.net/jdk8/tl/hotspot/rev/50b4400ca1ec Added tag hs24-b08 for changeset dff6e3459210 ! .hgtags From lana.steuck at oracle.com Thu Apr 26 23:32:32 2012 From: lana.steuck at oracle.com (lana.steuck at oracle.com) Date: Thu, 26 Apr 2012 23:32:32 +0000 Subject: hg: jdk8/tl/jdk: 48 new changesets Message-ID: <20120426234110.236134729D@hg.openjdk.java.net> Changeset: fcc788b5f917 Author: mfang Date: 2012-03-16 10:20 -0700 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/fcc788b5f917 Merge Changeset: 5e32f84f0ca9 Author: mfang Date: 2012-03-22 10:24 -0700 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/5e32f84f0ca9 Merge Changeset: 5f59f0b851c5 Author: mfang Date: 2012-03-28 16:22 -0700 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/5f59f0b851c5 Merge - test/java/io/File/isDirectory/Applet.html - test/sun/nio/cs/OLD/TestX11CS.java Changeset: 4bebd1932e44 Author: mfang Date: 2012-03-29 16:16 -0700 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/4bebd1932e44 Merge Changeset: 780b11d28712 Author: yhuang Date: 2012-03-29 21:16 -0700 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/780b11d28712 7028073: The currency symbol for Peru is wrong Reviewed-by: naoto ! src/share/classes/sun/util/resources/CurrencyNames_es_PE.properties ! test/sun/text/resources/LocaleData ! test/sun/text/resources/LocaleDataTest.java Changeset: 6217efc48d7a Author: yhuang Date: 2012-03-29 21:22 -0700 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/6217efc48d7a Merge - test/java/io/File/isDirectory/Applet.html - test/sun/nio/cs/OLD/TestX11CS.java Changeset: 9d3d01aca52c Author: ohair Date: 2012-04-10 08:22 -0700 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/9d3d01aca52c 7074397: Build infrastructure changes (makefile re-write) Summary: New makefiles transition, old and new living side by side for now. Reviewed-by: ohair, jjg, dholmes, ohrstrom, erikj, ihse, tgranat, ykantser Contributed-by: ohrstrom , erikj , ihse , tgranat , ykantser ! make/common/internal/Resources.gmk ! make/tools/src/build/tools/compileproperties/CompileProperties.java ! make/tools/src/build/tools/generatecharacter/CharacterScript.java ! make/tools/src/build/tools/stripproperties/StripProperties.java + makefiles/CompileDemos.gmk + makefiles/CompileJavaClasses.gmk + makefiles/CompileLaunchers.gmk + makefiles/CompileNativeLibraries.gmk + makefiles/CopyFiles.gmk + makefiles/CopyIntoClasses.gmk + makefiles/CopySamples.gmk + makefiles/GendataBreakIterator.gmk + makefiles/GenerateClasses.gmk + makefiles/GenerateData.gmk + makefiles/GenerateJavaSources.gmk + makefiles/GensrcCharacterData.gmk + makefiles/GensrcJDWP.gmk + makefiles/GensrcLocaleDataMetaInfo.gmk + makefiles/GensrcMisc.gmk + makefiles/GensrcProperties.gmk + makefiles/Images.gmk + makefiles/LegacyMakefiles.gmk + makefiles/Makefile + makefiles/PatchList.solaris + makefiles/Setup.gmk + makefiles/Tools.gmk + makefiles/altclasses/Makefile + makefiles/apple/Makefile + makefiles/apple/applescript/Makefile + makefiles/com/Makefile + makefiles/com/apple/Makefile + makefiles/com/apple/osx/Makefile + makefiles/com/apple/osxui/Makefile + makefiles/com/oracle/Makefile + makefiles/com/oracle/jfr/Makefile + makefiles/com/oracle/security/ucrypto/FILES_c.gmk + makefiles/com/oracle/security/ucrypto/Makefile + makefiles/com/oracle/security/ucrypto/mapfile-vers + makefiles/com/sun/Makefile + makefiles/com/sun/crypto/provider/Makefile + makefiles/common/Classes.gmk + makefiles/common/Cscope.gmk + makefiles/common/Defs-embedded.gmk + makefiles/common/Defs-linux.gmk + makefiles/common/Defs-macosx.gmk + makefiles/common/Defs-solaris.gmk + makefiles/common/Defs-windows.gmk + makefiles/common/Defs.gmk + makefiles/common/Demo.gmk + makefiles/common/Library.gmk + makefiles/common/Mapfile-vers.gmk + makefiles/common/Modules.gmk + makefiles/common/Program.gmk + makefiles/common/Release-embedded.gmk + makefiles/common/Release-macosx.gmk + makefiles/common/Release.gmk + makefiles/common/Rules.gmk + makefiles/common/Subdirs.gmk + makefiles/common/internal/Defs-corba.gmk + makefiles/common/internal/Defs-jaxp.gmk + makefiles/common/internal/Defs-jaxws.gmk + makefiles/common/internal/Defs-langtools.gmk + makefiles/common/internal/ImportComponents.gmk + makefiles/common/internal/NativeCompileRules.gmk + makefiles/common/internal/Resources.gmk + makefiles/common/shared/Compiler-gcc.gmk + makefiles/common/shared/Compiler-llvm.gmk + makefiles/common/shared/Compiler-msvc.gmk + makefiles/common/shared/Compiler-sun.gmk + makefiles/common/shared/Defs-control.gmk + makefiles/common/shared/Defs-java.gmk + makefiles/common/shared/Defs-javadoc.gmk + makefiles/common/shared/Defs-linux.gmk + makefiles/common/shared/Defs-macosx.gmk + makefiles/common/shared/Defs-solaris.gmk + makefiles/common/shared/Defs-versions.gmk + makefiles/common/shared/Defs-windows.gmk + makefiles/common/shared/Defs.gmk + makefiles/common/shared/Platform.gmk + makefiles/common/shared/PrivateDefs.gmk-example + makefiles/common/shared/Sanity-Settings.gmk + makefiles/docs/CORE_PKGS.gmk + makefiles/docs/Makefile + makefiles/docs/NON_CORE_PKGS.gmk + makefiles/docs/Notes.html + makefiles/java/Makefile + makefiles/java/fdlibm/FILES_c.gmk + makefiles/java/fdlibm/Makefile + makefiles/java/instrument/Makefile + makefiles/java/instrument/mapfile-vers + makefiles/java/invoke/Makefile + makefiles/java/java/Exportedfiles.gmk + makefiles/java/java/FILES_c.gmk + makefiles/java/java/FILES_java.gmk + makefiles/java/java/Makefile + makefiles/java/java/localelist.sh + makefiles/java/java/mapfile-vers + makefiles/java/java/reflect/Makefile + makefiles/java/java/reorder-i586 + makefiles/java/java/reorder-sparc + makefiles/java/java/reorder-sparcv9 + makefiles/java/java_crw_demo/Makefile + makefiles/java/java_crw_demo/mapfile-vers + makefiles/java/java_hprof_demo/Makefile + makefiles/java/java_hprof_demo/mapfile-vers + makefiles/java/jexec/Makefile + makefiles/java/jli/Makefile + makefiles/java/jli/mapfile-vers + makefiles/java/jobjc/Makefile + makefiles/java/jvm/Makefile + makefiles/java/main/Makefile + makefiles/java/main/java/Makefile + makefiles/java/main/java/mapfile-amd64 + makefiles/java/main/java/mapfile-i586 + makefiles/java/main/java/mapfile-sparc + makefiles/java/main/java/mapfile-sparcv9 + makefiles/java/main/javaw/Makefile + makefiles/java/management/Exportedfiles.gmk + makefiles/java/management/FILES_c.gmk + makefiles/java/management/Makefile + makefiles/java/management/mapfile-vers + makefiles/java/net/FILES_c.gmk + makefiles/java/net/Makefile + makefiles/java/net/mapfile-vers + makefiles/java/nio/Exportedfiles.gmk + makefiles/java/nio/FILES_c.gmk + makefiles/java/nio/FILES_java.gmk + makefiles/java/nio/Makefile + makefiles/java/nio/addNotices.sh + makefiles/java/nio/genBuffer.sh + makefiles/java/nio/genCharsetProvider.sh + makefiles/java/nio/genCoder.sh + makefiles/java/nio/genExceptions.sh + makefiles/java/nio/mapfile-bsd + makefiles/java/nio/mapfile-linux + makefiles/java/nio/mapfile-solaris + makefiles/java/nio/reorder-i586 + makefiles/java/nio/reorder-sparc + makefiles/java/nio/reorder-sparcv9 + makefiles/java/npt/Makefile + makefiles/java/npt/mapfile-vers + makefiles/java/redist/Makefile + makefiles/java/redist/fonts/Makefile + makefiles/java/redist/sajdi/Makefile + makefiles/java/security/Makefile + makefiles/java/sun_nio/FILES_java.gmk + makefiles/java/sun_nio/Makefile + makefiles/java/util/FILES_java.gmk + makefiles/java/util/FILES_properties.gmk + makefiles/java/util/Makefile + makefiles/java/verify/Makefile + makefiles/java/verify/mapfile-vers + makefiles/java/verify/reorder-i586 + makefiles/java/verify/reorder-sparc + makefiles/java/verify/reorder-sparcv9 + makefiles/javax/Makefile + makefiles/javax/crypto/Defs-jce.gmk + makefiles/javax/crypto/Makefile + makefiles/javax/crypto/policy/limited/LIMITED + makefiles/javax/crypto/policy/limited/default_local.policy + makefiles/javax/crypto/policy/limited/exempt_local.policy + makefiles/javax/crypto/policy/unlimited/UNLIMITED + makefiles/javax/crypto/policy/unlimited/default_US_export.policy + makefiles/javax/crypto/policy/unlimited/default_local.policy + makefiles/javax/imageio/Makefile + makefiles/javax/management/Makefile + makefiles/javax/sound/FILES_c.gmk + makefiles/javax/sound/Makefile + makefiles/javax/sound/SoundDefs.gmk + makefiles/javax/sound/jsoundalsa/Makefile + makefiles/javax/sound/jsoundalsa/mapfile-vers + makefiles/javax/sound/jsoundds/Makefile + makefiles/javax/sound/mapfile-vers + makefiles/javax/sql/Makefile + makefiles/javax/swing/FILES.gmk + makefiles/javax/swing/Makefile + makefiles/javax/swing/beaninfo/FILES.gmk + makefiles/javax/swing/beaninfo/Makefile + makefiles/javax/swing/beaninfo/SwingBeans.gmk + makefiles/javax/swing/beaninfo/manifest + makefiles/javax/swing/html32dtd/Makefile + makefiles/javax/swing/plaf/FILES.gmk + makefiles/javax/swing/plaf/Makefile + makefiles/jpda/jdwp/jdwp.spec + makefiles/jprt.gmk + makefiles/jprt.properties + makefiles/mapfiles/launchers/mapfile-amd64 + makefiles/mapfiles/launchers/mapfile-i586 + makefiles/mapfiles/launchers/mapfile-sparc + makefiles/mapfiles/launchers/mapfile-sparcv9 + makefiles/mapfiles/libattach/mapfile-linux + makefiles/mapfiles/libattach/mapfile-solaris + makefiles/mapfiles/libdt_socket/mapfile-vers + makefiles/mapfiles/libfontmanager/mapfile-vers + makefiles/mapfiles/libfontmanager/mapfile-vers.openjdk + makefiles/mapfiles/libjaas/mapfile-vers + makefiles/mapfiles/libjawt/mapfile-vers + makefiles/mapfiles/libjdwp/mapfile-vers + makefiles/mapfiles/libjpeg/mapfile-vers + makefiles/mapfiles/libjpeg/mapfile-vers-closed + makefiles/mapfiles/libjpeg/reorder-i586 + makefiles/mapfiles/libjpeg/reorder-sparc + makefiles/mapfiles/libjpeg/reorder-sparcv9 + makefiles/mapfiles/libjsdt/mapfile-vers + makefiles/mapfiles/liblcms/mapfile-vers + makefiles/mapfiles/libsctp/mapfile-vers + makefiles/mapfiles/libt2k/mapfile-vers + makefiles/mapfiles/libunpack/mapfile-vers + makefiles/mapfiles/libunpack/mapfile-vers-unpack200 + makefiles/mapfiles/libverify/mapfile-vers + makefiles/mapfiles/libverify/reorder-i586 + makefiles/mapfiles/libverify/reorder-sparc + makefiles/mapfiles/libverify/reorder-sparcv9 + makefiles/mapfiles/libzip/mapfile-vers + makefiles/mapfiles/libzip/reorder-i586 + makefiles/mapfiles/libzip/reorder-sparc + makefiles/mapfiles/libzip/reorder-sparcv9 + makefiles/mkdemo/Makefile + makefiles/mkdemo/jni/Makefile + makefiles/mkdemo/jni/Poller/Makefile + makefiles/mkdemo/jvmti/Makefile + makefiles/mkdemo/jvmti/README.txt + makefiles/mkdemo/jvmti/hprof/Makefile + makefiles/mkdemo/jvmti/mapfile-vers + makefiles/mkdemo/management/README.txt + makefiles/sun/Makefile + makefiles/sun/awt/CondenseRules.awk + makefiles/sun/awt/Depend.mak + makefiles/sun/awt/Depend.sed + makefiles/sun/awt/FILES_c_macosx.gmk + makefiles/sun/awt/FILES_c_unix.gmk + makefiles/sun/awt/FILES_c_windows.gmk + makefiles/sun/awt/FILES_export_macosx.gmk + makefiles/sun/awt/FILES_export_unix.gmk + makefiles/sun/awt/FILES_export_windows.gmk + makefiles/sun/awt/Makefile + makefiles/sun/awt/README + makefiles/sun/awt/make.depend + makefiles/sun/awt/mapfile-mawt-vers + makefiles/sun/awt/mapfile-vers + makefiles/sun/awt/mapfile-vers-linux + makefiles/sun/awt/mawt.gmk + makefiles/sun/cmm/Makefile + makefiles/sun/cmm/kcms/FILES_c_unix.gmk + makefiles/sun/cmm/kcms/FILES_c_windows.gmk + makefiles/sun/cmm/kcms/Makefile + makefiles/sun/cmm/kcms/mapfile-vers + makefiles/sun/dcpr/FILES_c.gmk + makefiles/sun/dcpr/Makefile + makefiles/sun/dcpr/mapfile-vers + makefiles/sun/headless/Makefile + makefiles/sun/headless/mapfile-vers + makefiles/sun/headless/reorder-i586 + makefiles/sun/headless/reorder-sparc + makefiles/sun/headless/reorder-sparcv9 + makefiles/sun/image/Makefile + makefiles/sun/image/generic/FILES_c.gmk + makefiles/sun/image/generic/Makefile + makefiles/sun/image/generic/mapfile-vers + makefiles/sun/image/vis/FILES_c.gmk + makefiles/sun/image/vis/Makefile + makefiles/sun/javazic/Makefile + makefiles/sun/jdbc/Makefile + makefiles/sun/jdga/Makefile + makefiles/sun/jdga/mapfile-vers + makefiles/sun/jkernel/Makefile + makefiles/sun/lwawt/FILES_c_macosx.gmk + makefiles/sun/lwawt/FILES_export_macosx.gmk + makefiles/sun/lwawt/Makefile + makefiles/sun/nio/Makefile + makefiles/sun/nio/cs/FILES_java.gmk + makefiles/sun/nio/cs/Makefile + makefiles/sun/org/Makefile + makefiles/sun/org/mozilla/Makefile + makefiles/sun/org/mozilla/javascript/Makefile + makefiles/sun/osxapp/Makefile + makefiles/sun/security/Makefile + makefiles/sun/security/ec/FILES_c.gmk + makefiles/sun/security/ec/Makefile + makefiles/sun/security/ec/mapfile-vers + makefiles/sun/security/jgss/Makefile + makefiles/sun/security/jgss/wrapper/FILES_c.gmk + makefiles/sun/security/jgss/wrapper/Makefile + makefiles/sun/security/jgss/wrapper/mapfile-vers + makefiles/sun/security/krb5/FILES_c_windows.gmk + makefiles/sun/security/krb5/Makefile + makefiles/sun/security/mscapi/FILES_cpp.gmk + makefiles/sun/security/mscapi/Makefile + makefiles/sun/security/other/Makefile + makefiles/sun/security/pkcs11/FILES_c.gmk + makefiles/sun/security/pkcs11/Makefile + makefiles/sun/security/pkcs11/mapfile-vers + makefiles/sun/security/smartcardio/FILES_c.gmk + makefiles/sun/security/smartcardio/Makefile + makefiles/sun/security/smartcardio/mapfile-vers + makefiles/sun/security/tools/Makefile + makefiles/sun/security/util/Makefile + makefiles/sun/splashscreen/FILES_c.gmk + makefiles/sun/splashscreen/Makefile + makefiles/sun/splashscreen/mapfile-vers + makefiles/sun/xawt/FILES_c_unix.gmk + makefiles/sun/xawt/FILES_export_unix.gmk + makefiles/sun/xawt/Makefile + makefiles/sun/xawt/ToBin.java + makefiles/sun/xawt/mapfile-vers ! src/share/classes/java/awt/AlphaComposite.java ! src/share/classes/java/awt/event/FocusEvent.java ! src/share/classes/java/awt/event/WindowEvent.java ! src/share/classes/sun/font/FontManager.java ! src/share/classes/sun/nio/ch/IOStatus.java ! src/share/classes/sun/nio/ch/sctp/SctpStdSocketOption.java ! src/solaris/classes/sun/nio/ch/sctp/AssociationChange.java ! src/solaris/classes/sun/nio/ch/sctp/PeerAddrChange.java ! src/solaris/classes/sun/nio/ch/sctp/ResultContainer.java + src/windows/classes/com/sun/tools/jdi/SharedMemoryConnection.java ! src/windows/classes/com/sun/tools/jdi/SharedMemoryTransportService.java Changeset: 29b680393f33 Author: katleman Date: 2012-04-11 14:09 -0700 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/29b680393f33 Merge Changeset: 0b052b7f3f83 Author: katleman Date: 2012-04-12 09:35 -0700 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/0b052b7f3f83 Added tag jdk8-b34 for changeset 29b680393f33 ! .hgtags Changeset: cf5b15ae858a Author: ohair Date: 2012-04-12 08:11 -0700 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/cf5b15ae858a 7160976: Fix missing file in new build infrastructure: Defs-utils.gmk Reviewed-by: ihse + makefiles/common/shared/Defs-utils.gmk Changeset: 468cf87890bd Author: ohair Date: 2012-04-12 08:11 -0700 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/468cf87890bd Merge - test/sun/security/pkcs11/nss/lib/linux-amd64/libfreebl3.chk - test/sun/security/pkcs11/nss/lib/linux-amd64/libfreebl3.so - test/sun/security/pkcs11/nss/lib/linux-amd64/libnspr4.so - test/sun/security/pkcs11/nss/lib/linux-amd64/libnss3.so - test/sun/security/pkcs11/nss/lib/linux-amd64/libnssckbi.so - test/sun/security/pkcs11/nss/lib/linux-amd64/libplc4.so - test/sun/security/pkcs11/nss/lib/linux-amd64/libplds4.so - test/sun/security/pkcs11/nss/lib/linux-amd64/libsoftokn3.chk - test/sun/security/pkcs11/nss/lib/linux-amd64/libsoftokn3.so - test/sun/security/pkcs11/nss/lib/linux-i586/libnspr4.so - test/sun/security/pkcs11/nss/lib/linux-i586/libnss3.so - test/sun/security/pkcs11/nss/lib/linux-i586/libnssckbi.so - test/sun/security/pkcs11/nss/lib/linux-i586/libplc4.so - test/sun/security/pkcs11/nss/lib/linux-i586/libplds4.so - test/sun/security/pkcs11/nss/lib/linux-i586/libsoftokn3.so - test/sun/security/pkcs11/nss/lib/solaris-amd64/libnspr4.so - test/sun/security/pkcs11/nss/lib/solaris-amd64/libnss3.so - test/sun/security/pkcs11/nss/lib/solaris-amd64/libnssckbi.so - test/sun/security/pkcs11/nss/lib/solaris-amd64/libplc4.so - test/sun/security/pkcs11/nss/lib/solaris-amd64/libplds4.so - test/sun/security/pkcs11/nss/lib/solaris-amd64/libsoftokn3.so - test/sun/security/pkcs11/nss/lib/solaris-i586/libfreebl3.so - test/sun/security/pkcs11/nss/lib/solaris-i586/libnspr4.so - test/sun/security/pkcs11/nss/lib/solaris-i586/libnss3.so - test/sun/security/pkcs11/nss/lib/solaris-i586/libnssckbi.so - test/sun/security/pkcs11/nss/lib/solaris-i586/libplc4.so - test/sun/security/pkcs11/nss/lib/solaris-i586/libplds4.so - test/sun/security/pkcs11/nss/lib/solaris-i586/libsoftokn3.so - test/sun/security/pkcs11/nss/lib/solaris-sparc/libfreebl_hybrid_3.chk - test/sun/security/pkcs11/nss/lib/solaris-sparc/libfreebl_hybrid_3.so - test/sun/security/pkcs11/nss/lib/solaris-sparc/libnspr4.so - test/sun/security/pkcs11/nss/lib/solaris-sparc/libnss3.so - test/sun/security/pkcs11/nss/lib/solaris-sparc/libnssckbi.so - test/sun/security/pkcs11/nss/lib/solaris-sparc/libplc4.so - test/sun/security/pkcs11/nss/lib/solaris-sparc/libplds4.so - test/sun/security/pkcs11/nss/lib/solaris-sparc/libsoftokn3.chk - test/sun/security/pkcs11/nss/lib/solaris-sparc/libsoftokn3.so - test/sun/security/pkcs11/nss/lib/solaris-sparcv9/libnspr4.so - test/sun/security/pkcs11/nss/lib/solaris-sparcv9/libnss3.so - test/sun/security/pkcs11/nss/lib/solaris-sparcv9/libnssckbi.so - test/sun/security/pkcs11/nss/lib/solaris-sparcv9/libplc4.so - test/sun/security/pkcs11/nss/lib/solaris-sparcv9/libplds4.so - test/sun/security/pkcs11/nss/lib/solaris-sparcv9/libsoftokn3.so - test/sun/security/pkcs11/nss/lib/windows-i586/libnspr4.dll - test/sun/security/pkcs11/nss/lib/windows-i586/libplc4.dll - test/sun/security/pkcs11/nss/lib/windows-i586/libplds4.dll - test/sun/security/pkcs11/nss/lib/windows-i586/nss3.dll - test/sun/security/pkcs11/nss/lib/windows-i586/nssckbi.dll - test/sun/security/pkcs11/nss/lib/windows-i586/softokn3.dll Changeset: 2e3e1356ffbd Author: katleman Date: 2012-04-18 16:39 -0700 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/2e3e1356ffbd Merge Changeset: f4a8153b3ce5 Author: katleman Date: 2012-04-19 12:18 -0700 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/f4a8153b3ce5 Added tag jdk8-b35 for changeset 2e3e1356ffbd ! .hgtags Changeset: da54364b140c Author: dbuck Date: 2012-03-21 18:41 -0700 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/da54364b140c 7104147: the fix for cr6887286 was not appropriate for backporting Summary: Memory leak in the list of ImageObservers watching an object. We use recursion to iterate over the list. So once the list gets too big, we overflow the stack. Fix is to execute a prune operation on ever add, so there is no way we can get indefinite growth of stale nodes. Reviewed-by: prr, flar ! src/share/classes/sun/awt/image/ImageWatched.java + test/sun/awt/image/ImageWatched/AddNoLeak.java Changeset: 604067ec3ced Author: luchsh Date: 2012-03-22 12:47 +0800 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/604067ec3ced 7152519: Dependency on non-POSIX header file causes portability problem Reviewed-by: prr, igor ! src/solaris/native/sun/awt/fontpath.c ! src/solaris/native/sun/java2d/opengl/OGLFuncs_md.h ! src/solaris/native/sun/java2d/x11/XRBackendNative.c Changeset: 6f9e3ac30764 Author: dbuck Date: 2012-03-30 10:18 -0700 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/6f9e3ac30764 7154822: forward port fix for Bug 13645891 to JDK8 jcmd (1024 byte file size limit issue) Summary: Changed so that jcmd breaks input into individual lines and sends each one to the jvm separately. Reviewed-by: dcubed, sla ! src/share/classes/sun/tools/jcmd/JCmd.java + test/sun/tools/jcmd/dcmd-big-script.txt + test/sun/tools/jcmd/jcmd-big-script.sh Changeset: 9383a3749940 Author: prr Date: 2012-04-05 15:14 -0700 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/9383a3749940 7159041: Fix for 7152519 causing build breakage. Reviewed-by: igor, jgodinez ! src/solaris/native/sun/java2d/opengl/OGLFuncs_md.h Changeset: a8773780c583 Author: prr Date: 2012-04-05 15:17 -0700 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/a8773780c583 7159136: JDK 7 font manager refactoring left JNI header generation and inclusion out of sync Reviewed-by: igor, jgodinez ! make/sun/font/Makefile ! make/sun/font/t2k/Makefile ! src/share/native/sun/font/sunFont.c Changeset: 79612a7c7100 Author: ceisserer Date: 2012-04-09 15:49 -0700 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/79612a7c7100 7150134: JCK api/java_awt/Graphics/index.html#DrawLine fails with OOM for jdk8 with XRender pipeline Reviewed-by: prr ! src/solaris/classes/sun/java2d/xr/XRRenderer.java Changeset: 1d8f83fe9e91 Author: lana Date: 2012-04-11 18:52 -0700 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/1d8f83fe9e91 Merge ! make/sun/font/Makefile - test/java/io/File/isDirectory/Applet.html - test/sun/nio/cs/OLD/TestX11CS.java - test/sun/security/pkcs11/nss/lib/linux-amd64/libfreebl3.chk - test/sun/security/pkcs11/nss/lib/linux-amd64/libfreebl3.so - test/sun/security/pkcs11/nss/lib/linux-amd64/libnspr4.so - test/sun/security/pkcs11/nss/lib/linux-amd64/libnss3.so - test/sun/security/pkcs11/nss/lib/linux-amd64/libnssckbi.so - test/sun/security/pkcs11/nss/lib/linux-amd64/libplc4.so - test/sun/security/pkcs11/nss/lib/linux-amd64/libplds4.so - test/sun/security/pkcs11/nss/lib/linux-amd64/libsoftokn3.chk - test/sun/security/pkcs11/nss/lib/linux-amd64/libsoftokn3.so - test/sun/security/pkcs11/nss/lib/linux-i586/libnspr4.so - test/sun/security/pkcs11/nss/lib/linux-i586/libnss3.so - test/sun/security/pkcs11/nss/lib/linux-i586/libnssckbi.so - test/sun/security/pkcs11/nss/lib/linux-i586/libplc4.so - test/sun/security/pkcs11/nss/lib/linux-i586/libplds4.so - test/sun/security/pkcs11/nss/lib/linux-i586/libsoftokn3.so - test/sun/security/pkcs11/nss/lib/solaris-amd64/libnspr4.so - test/sun/security/pkcs11/nss/lib/solaris-amd64/libnss3.so - test/sun/security/pkcs11/nss/lib/solaris-amd64/libnssckbi.so - test/sun/security/pkcs11/nss/lib/solaris-amd64/libplc4.so - test/sun/security/pkcs11/nss/lib/solaris-amd64/libplds4.so - test/sun/security/pkcs11/nss/lib/solaris-amd64/libsoftokn3.so - test/sun/security/pkcs11/nss/lib/solaris-i586/libfreebl3.so - test/sun/security/pkcs11/nss/lib/solaris-i586/libnspr4.so - test/sun/security/pkcs11/nss/lib/solaris-i586/libnss3.so - test/sun/security/pkcs11/nss/lib/solaris-i586/libnssckbi.so - test/sun/security/pkcs11/nss/lib/solaris-i586/libplc4.so - test/sun/security/pkcs11/nss/lib/solaris-i586/libplds4.so - test/sun/security/pkcs11/nss/lib/solaris-i586/libsoftokn3.so - test/sun/security/pkcs11/nss/lib/solaris-sparc/libfreebl_hybrid_3.chk - test/sun/security/pkcs11/nss/lib/solaris-sparc/libfreebl_hybrid_3.so - test/sun/security/pkcs11/nss/lib/solaris-sparc/libnspr4.so - test/sun/security/pkcs11/nss/lib/solaris-sparc/libnss3.so - test/sun/security/pkcs11/nss/lib/solaris-sparc/libnssckbi.so - test/sun/security/pkcs11/nss/lib/solaris-sparc/libplc4.so - test/sun/security/pkcs11/nss/lib/solaris-sparc/libplds4.so - test/sun/security/pkcs11/nss/lib/solaris-sparc/libsoftokn3.chk - test/sun/security/pkcs11/nss/lib/solaris-sparc/libsoftokn3.so - test/sun/security/pkcs11/nss/lib/solaris-sparcv9/libnspr4.so - test/sun/security/pkcs11/nss/lib/solaris-sparcv9/libnss3.so - test/sun/security/pkcs11/nss/lib/solaris-sparcv9/libnssckbi.so - test/sun/security/pkcs11/nss/lib/solaris-sparcv9/libplc4.so - test/sun/security/pkcs11/nss/lib/solaris-sparcv9/libplds4.so - test/sun/security/pkcs11/nss/lib/solaris-sparcv9/libsoftokn3.so - test/sun/security/pkcs11/nss/lib/windows-i586/libnspr4.dll - test/sun/security/pkcs11/nss/lib/windows-i586/libplc4.dll - test/sun/security/pkcs11/nss/lib/windows-i586/libplds4.dll - test/sun/security/pkcs11/nss/lib/windows-i586/nss3.dll - test/sun/security/pkcs11/nss/lib/windows-i586/nssckbi.dll - test/sun/security/pkcs11/nss/lib/windows-i586/softokn3.dll Changeset: 508ebb79234f Author: lana Date: 2012-04-18 10:16 -0700 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/508ebb79234f Merge Changeset: 933ea89bec06 Author: serb Date: 2012-04-05 18:27 +0400 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/933ea89bec06 7150105: [macosx] four scroll-buttons don't display. scroll-sliders cursors are TextCursor. Reviewed-by: anthony, art, alexp ! src/macosx/classes/sun/lwawt/LWComponentPeer.java ! src/macosx/classes/sun/lwawt/LWCursorManager.java ! src/macosx/classes/sun/lwawt/LWTextAreaPeer.java ! src/macosx/classes/sun/lwawt/LWWindowPeer.java ! src/macosx/classes/sun/lwawt/macosx/CCursorManager.java Changeset: 14646df8f386 Author: serb Date: 2012-04-05 19:01 +0400 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/14646df8f386 7124401: [macosx] After call Frame dispose() application continues to work Reviewed-by: art, alexp ! test/sun/java2d/X11SurfaceData/SharedMemoryPixmapsTest/SharedMemoryPixmapsTest.java Changeset: c87bdacb109e Author: serb Date: 2012-04-05 19:22 +0400 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/c87bdacb109e 7149913: [macosx] Deadlock in LWTextComponentPeer Reviewed-by: anthony, art ! src/macosx/classes/sun/lwawt/LWComponentPeer.java Changeset: 004d53e61c3b Author: serb Date: 2012-04-05 19:43 +0400 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/004d53e61c3b 7124528: [macosx] Selection is not cleared properly in text component. Reviewed-by: anthony, art ! src/macosx/classes/sun/lwawt/LWTextFieldPeer.java Changeset: dc0d4cf71dfb Author: serb Date: 2012-04-05 20:38 +0400 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/dc0d4cf71dfb 7125657: [macosx] SpreadSheet demo has the broken display when clicking outside of the table. Reviewed-by: alexp, anthony, art ! src/macosx/classes/sun/lwawt/LWRepaintArea.java Changeset: 32d2d5c8c8b9 Author: anthony Date: 2012-04-06 17:03 +0400 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/32d2d5c8c8b9 7147435: closed/java/awt/Toolkit/Headless/WrappedToolkitTest/WrappedToolkitTest.sh failed since 7u4b11 Summary: Forward-port the fix from 7u4 and open-source the test Reviewed-by: art + test/java/awt/Toolkit/Headless/WrappedToolkitTest/TestWrapped.java + test/java/awt/Toolkit/Headless/WrappedToolkitTest/WrappedToolkitTest.sh Changeset: 845604a88291 Author: anthony Date: 2012-04-06 17:15 +0400 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/845604a88291 7124553: [macosx] Need minimum size for titled Frames and JFrames Summary: Forward-port the fix from 7u4 and also eliminate the grow box since we only support OS X 10.7+ that doesn't require it. Reviewed-by: art, swingler ! src/macosx/classes/sun/lwawt/macosx/CPlatformWindow.java ! src/macosx/native/sun/awt/AWTWindow.h ! src/macosx/native/sun/awt/AWTWindow.m Changeset: 2e1ea0af8edf Author: anthony Date: 2012-04-06 17:20 +0400 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/2e1ea0af8edf 7148275: [macosx] setIconImages() not working correctly (distorted icon when minimized) Summary: Pass all images provided by user code to the system and let it do the right thing Reviewed-by: art, swingler ! src/macosx/classes/sun/lwawt/macosx/CImage.java ! src/macosx/classes/sun/lwawt/macosx/CPlatformWindow.java ! src/macosx/native/sun/awt/CImage.m Changeset: 86b611e57ee9 Author: rupashka Date: 2012-04-10 18:53 +0300 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/86b611e57ee9 7146146: Deadlock between subclass of AbstractDocument and UndoManager Reviewed-by: art ! src/share/classes/javax/swing/text/AbstractDocument.java + test/javax/swing/text/AbstractDocument/7146146/bug7146146.java Changeset: 8fe9b93e2474 Author: rupashka Date: 2012-04-10 19:09 +0300 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/8fe9b93e2474 7158712: Synth Property "ComboBox.popupInsets" is ignored Reviewed-by: alexp ! src/share/classes/javax/swing/plaf/synth/SynthComboPopup.java + test/javax/swing/plaf/synth/7158712/bug7158712.java ! test/javax/swing/regtesthelpers/Util.java Changeset: 33c604bf074f Author: serb Date: 2012-04-10 22:09 +0400 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/33c604bf074f 7097771: setEnabled does not work for components in disabled containers. Reviewed-by: art, anthony ! src/solaris/classes/sun/awt/X11/XComponentPeer.java + test/java/awt/Component/7097771/bug7097771.java Changeset: 49d2a5eb48b1 Author: leonidr Date: 2012-04-11 21:06 +0400 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/49d2a5eb48b1 7124411: [macosx] There's no KEY_TYPED for VK_ESCAPE Reviewed-by: art ! src/macosx/native/sun/awt/AWTEvent.m Changeset: 417ab141f5c0 Author: lana Date: 2012-04-11 18:44 -0700 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/417ab141f5c0 Merge - test/java/io/File/isDirectory/Applet.html - test/sun/nio/cs/OLD/TestX11CS.java - test/sun/security/pkcs11/nss/lib/linux-amd64/libfreebl3.chk - test/sun/security/pkcs11/nss/lib/linux-amd64/libfreebl3.so - test/sun/security/pkcs11/nss/lib/linux-amd64/libnspr4.so - test/sun/security/pkcs11/nss/lib/linux-amd64/libnss3.so - test/sun/security/pkcs11/nss/lib/linux-amd64/libnssckbi.so - test/sun/security/pkcs11/nss/lib/linux-amd64/libplc4.so - test/sun/security/pkcs11/nss/lib/linux-amd64/libplds4.so - test/sun/security/pkcs11/nss/lib/linux-amd64/libsoftokn3.chk - test/sun/security/pkcs11/nss/lib/linux-amd64/libsoftokn3.so - test/sun/security/pkcs11/nss/lib/linux-i586/libnspr4.so - test/sun/security/pkcs11/nss/lib/linux-i586/libnss3.so - test/sun/security/pkcs11/nss/lib/linux-i586/libnssckbi.so - test/sun/security/pkcs11/nss/lib/linux-i586/libplc4.so - test/sun/security/pkcs11/nss/lib/linux-i586/libplds4.so - test/sun/security/pkcs11/nss/lib/linux-i586/libsoftokn3.so - test/sun/security/pkcs11/nss/lib/solaris-amd64/libnspr4.so - test/sun/security/pkcs11/nss/lib/solaris-amd64/libnss3.so - test/sun/security/pkcs11/nss/lib/solaris-amd64/libnssckbi.so - test/sun/security/pkcs11/nss/lib/solaris-amd64/libplc4.so - test/sun/security/pkcs11/nss/lib/solaris-amd64/libplds4.so - test/sun/security/pkcs11/nss/lib/solaris-amd64/libsoftokn3.so - test/sun/security/pkcs11/nss/lib/solaris-i586/libfreebl3.so - test/sun/security/pkcs11/nss/lib/solaris-i586/libnspr4.so - test/sun/security/pkcs11/nss/lib/solaris-i586/libnss3.so - test/sun/security/pkcs11/nss/lib/solaris-i586/libnssckbi.so - test/sun/security/pkcs11/nss/lib/solaris-i586/libplc4.so - test/sun/security/pkcs11/nss/lib/solaris-i586/libplds4.so - test/sun/security/pkcs11/nss/lib/solaris-i586/libsoftokn3.so - test/sun/security/pkcs11/nss/lib/solaris-sparc/libfreebl_hybrid_3.chk - test/sun/security/pkcs11/nss/lib/solaris-sparc/libfreebl_hybrid_3.so - test/sun/security/pkcs11/nss/lib/solaris-sparc/libnspr4.so - test/sun/security/pkcs11/nss/lib/solaris-sparc/libnss3.so - test/sun/security/pkcs11/nss/lib/solaris-sparc/libnssckbi.so - test/sun/security/pkcs11/nss/lib/solaris-sparc/libplc4.so - test/sun/security/pkcs11/nss/lib/solaris-sparc/libplds4.so - test/sun/security/pkcs11/nss/lib/solaris-sparc/libsoftokn3.chk - test/sun/security/pkcs11/nss/lib/solaris-sparc/libsoftokn3.so - test/sun/security/pkcs11/nss/lib/solaris-sparcv9/libnspr4.so - test/sun/security/pkcs11/nss/lib/solaris-sparcv9/libnss3.so - test/sun/security/pkcs11/nss/lib/solaris-sparcv9/libnssckbi.so - test/sun/security/pkcs11/nss/lib/solaris-sparcv9/libplc4.so - test/sun/security/pkcs11/nss/lib/solaris-sparcv9/libplds4.so - test/sun/security/pkcs11/nss/lib/solaris-sparcv9/libsoftokn3.so - test/sun/security/pkcs11/nss/lib/windows-i586/libnspr4.dll - test/sun/security/pkcs11/nss/lib/windows-i586/libplc4.dll - test/sun/security/pkcs11/nss/lib/windows-i586/libplds4.dll - test/sun/security/pkcs11/nss/lib/windows-i586/nss3.dll - test/sun/security/pkcs11/nss/lib/windows-i586/nssckbi.dll - test/sun/security/pkcs11/nss/lib/windows-i586/softokn3.dll Changeset: 9b4e642a3053 Author: rupashka Date: 2012-04-12 12:48 +0300 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/9b4e642a3053 7160653: test/javax/swing/plaf/synth/7158712/bug7158712.java failed on Ubuntu Reviewed-by: alexp ! test/javax/swing/plaf/synth/7158712/bug7158712.java Changeset: cccb19a3038e Author: leonidr Date: 2012-04-13 20:31 +0400 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/cccb19a3038e 7124272: [macosx] VK_DELETE does produce an extraneous character in a TextArea or TextField Reviewed-by: kizune, art ! src/macosx/classes/sun/lwawt/macosx/CPlatformResponder.java ! src/macosx/classes/sun/lwawt/macosx/event/NSEvent.java ! src/macosx/native/sun/awt/AWTEvent.m Changeset: 602398b3a8e7 Author: rupashka Date: 2012-04-15 12:58 +0300 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/602398b3a8e7 7149090: Nimbus:BorderFactory.createTitledBorder() the DEFAULT position of a title is not the same as the TOP Reviewed-by: alexp ! src/share/classes/javax/swing/BorderFactory.java + test/javax/swing/border/Test7149090.java Changeset: 7b0ed75abef4 Author: anthony Date: 2012-04-16 18:36 +0400 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/7b0ed75abef4 7080700: numAppContexts is accessed in non-threadsafe way in sun.awt.AppContext Summary: Replace a volatile integer with an AtomicInteger for numAppContexts Reviewed-by: anthony, art, dholmes ! src/share/classes/sun/awt/AppContext.java Changeset: 236c0051dcc7 Author: amenkov Date: 2012-04-16 17:04 +0300 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/236c0051dcc7 7058852: javax/sound/sampled/FileWriter/AlawEncoderSync.java failing intermittently Reviewed-by: prr ! test/javax/sound/sampled/FileWriter/AlawEncoderSync.java Changeset: bc5d80e168f3 Author: amenkov Date: 2012-04-17 13:03 +0300 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/bc5d80e168f3 7100140: [macosx] Test closed/javax/sound/sampled/DirectAudio/bug6400879.java is invalid Reviewed-by: prr + test/javax/sound/sampled/DirectAudio/bug6400879.java Changeset: ca58194c1b0c Author: amenkov Date: 2012-04-17 13:16 +0300 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/ca58194c1b0c Merge Changeset: cb4f5f486c45 Author: kizune Date: 2012-04-17 21:40 +0400 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/cb4f5f486c45 7161109: [macosx] JCK AWT interactive test DnDTextDropTest fails on MacOS Reviewed-by: serb ! src/macosx/classes/sun/lwawt/LWComponentPeer.java ! src/macosx/native/sun/awt/CDropTarget.m Changeset: 68be50577be8 Author: dcherepanov Date: 2012-04-18 09:29 +0400 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/68be50577be8 7156194: [macosx] Can't type non-ASCII characters into applets Reviewed-by: anthony, art ! src/macosx/classes/sun/lwawt/macosx/CEmbeddedFrame.java ! src/macosx/classes/sun/lwawt/macosx/CPlatformResponder.java ! src/macosx/classes/sun/lwawt/macosx/CPlatformView.java Changeset: 8bfdb214756c Author: leonidr Date: 2012-04-18 21:08 +0400 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/8bfdb214756c 7124286: [macosx] Option modifier should work like AltGr as in Apple jdk Reviewed-by: anthony ! src/macosx/classes/sun/lwawt/macosx/LWCToolkit.java ! src/share/classes/javax/swing/text/DefaultEditorKit.java ! src/share/classes/sun/awt/SunToolkit.java Changeset: 96c750783a3d Author: lana Date: 2012-04-18 10:18 -0700 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/96c750783a3d Merge Changeset: 38f3f446beff Author: lana Date: 2012-04-18 10:21 -0700 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/38f3f446beff Merge Changeset: 45da9cb055ee Author: lana Date: 2012-04-23 16:58 -0700 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/45da9cb055ee Merge Changeset: 1cdcca9f3530 Author: lana Date: 2012-04-26 14:21 -0700 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/1cdcca9f3530 Merge From joe.darcy at oracle.com Fri Apr 27 03:29:46 2012 From: joe.darcy at oracle.com (Joe Darcy) Date: Thu, 26 Apr 2012 20:29:46 -0700 Subject: Remove the assert in Integer.valueOf() In-Reply-To: <4F96C05E.6040001@oracle.com> References: <4F9592ED.3040309@univ-mlv.fr> <4F95EFDC.9090100@gmx.de> <4F96B108.70406@univ-mlv.fr> <4F96C05E.6040001@oracle.com> Message-ID: <4F9A12AA.8000605@oracle.com> On 4/24/2012 8:01 AM, Alan Bateman wrote: > On 24/04/2012 14:56, R?mi Forax wrote: >> >> Here, I don't really ask for tweaking something but more to remove an >> assert >> which do something which is unrelated to the current algorithm. >> In my opinion, it's a debug assert used during the development >> that slip into the production code. The fact that the range [-128, >> 127] should be >> covered by the cache is mandated by the JLS, but if you really want >> an assert >> you should move it when high and low are initialized (they are final) >> and not where they are used. >> >> I also agree that the inlining heuristic should be changed and >> I'm sure that everybody that have looked to the inlining heuristic >> code of Hotspot will agree with that >> but this is somehow unrelated to the problem. >> This is how I've found this assert, >> it doesn't change the fact that this assert should not be there. > I added that assert as part of the work of 6807702. You can't use > asserts in code that is executed before system initialization is > complete and I think this is why we put the assert is valueOf rather > than in the initializer. I don't have any objection to removing it, > assuming Joe is okay with it too. > > -Alan > > [1] http://hg.openjdk.java.net/jdk8/tl/jdk/rev/4c3f752993a5 Hi Alan, I don't object to the assert being removed if asserts or assert-equivalent checks are added in the IntegerCache class. Thanks, -Joe From david.holmes at oracle.com Fri Apr 27 04:47:07 2012 From: david.holmes at oracle.com (David Holmes) Date: Fri, 27 Apr 2012 14:47:07 +1000 Subject: RFR: 7103570 AtomicIntegerFieldUpdater does not work when SecurityManager is installed In-Reply-To: <4F90A8D1.8010903@oracle.com> References: <4F8FF873.50301@oracle.com> <4F90A8D1.8010903@oracle.com> Message-ID: <4F9A24CB.5030102@oracle.com> Due to a problem with jtreg and the installation of a security manager I've had to modify the test to install the security manager itself. updated webrev: http://cr.openjdk.java.net/~dholmes/7103570/webrev.02/ Still need an official Review (thanks Chris!) :) Will push as soon as CCC is finalized. Thanks, David On 20/04/2012 10:07 AM, David Holmes wrote: > Thanks Paul that was a good set of suggestions. I had overlooked the > change in the exceptions being thrown. > > Updated webrev: > > http://cr.openjdk.java.net/~dholmes/7103570/webrev.01/ > > I can't do quite exactly as you said because the NoSuchFieldException > has to remain wrapped in one RuntimeException. > > David > ----- > > On 19/04/2012 11:53 PM, Paul Sandoz wrote: >> Hi David, >> >> I think you can retain the same exception throwing behavior (plus no >> casts are required to Field) as before by doing: >> >> try { >> field = AccessController.doPrivileged(new >> PriviledgedExceptionAction() { >> public Field run() throws NoSuchFieldException { >> return tclass.getDeclaredField(fieldName); >> } >> } >> } catch (PrivilegedActionException e) { >> throw (NoSuchFieldException)e.getException(); >> } >> >> Thus avoiding a NoSuchFieldException being nested RuntimeException which >> is further nested in a RuntimeException. >> >> Paul. >> >> On Apr 19, 2012, at 1:35 PM, David Holmes wrote: >> >>> http://cr.openjdk.java.net/~dholmes/7103570/webrev/ >>> >>> Basic fix is to call getDeclaredField() inside a doPrivileged block. >>> >>> In addition the call to checkPackageAccess is now conditional - it >>> allows for, for example, a class in sun.misc to create a field updater >>> for another class in sun.misc. >>> >>> Finally the @throws spec for newUpdater has been expanded to say: >>> >>> @throws RuntimeException with a nested reflection-based >>> exception if the class does not hold field or is the wrong type, >>> + or the field is inaccessible to the caller according to Java language >>> + access control >>> >>> This last part requires CCC approval which I will initiate. >>> >>> I have a glitch with running the test under jtreg but hopefully that >>> will get sorted soon (jtreg fails if a security manager is installed). >>> >>> Thanks, >>> David Holmes >>> ------------ >> From xuelei.fan at oracle.com Fri Apr 27 11:28:05 2012 From: xuelei.fan at oracle.com (xuelei.fan at oracle.com) Date: Fri, 27 Apr 2012 11:28:05 +0000 Subject: hg: jdk8/tl/jdk: 6996372: synchronizing handshaking hash Message-ID: <20120427112831.16154472D9@hg.openjdk.java.net> Changeset: f0842ed897c3 Author: xuelei Date: 2012-04-27 04:25 -0700 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/f0842ed897c3 6996372: synchronizing handshaking hash Summary: remove the unnecessary synchronization. Also reviewed by David Schlosnagle (schlosna at gmail.com) Reviewed-by: weijun ! src/share/classes/sun/security/util/DisabledAlgorithmConstraints.java From dl at cs.oswego.edu Fri Apr 27 11:32:27 2012 From: dl at cs.oswego.edu (Doug Lea) Date: Fri, 27 Apr 2012 07:32:27 -0400 Subject: RFR: 7103570 AtomicIntegerFieldUpdater does not work when SecurityManager is installed In-Reply-To: <4F9A24CB.5030102@oracle.com> References: <4F8FF873.50301@oracle.com> <4F90A8D1.8010903@oracle.com> <4F9A24CB.5030102@oracle.com> Message-ID: <4F9A83CB.2060307@cs.oswego.edu> On 04/27/12 00:47, David Holmes wrote: > Due to a problem with jtreg and the installation of a security manager I've had > to modify the test to install the security manager itself. > > updated webrev: > > http://cr.openjdk.java.net/~dholmes/7103570/webrev.02/ > Looks OK, although the main sources seems to omit a little clean-up day patch from last year of replacing "*" imports: - import java.lang.reflect.*; + import java.lang.reflect.Field; + import java.lang.reflect.Modifier; The jsr166 versions are otherwise now synced with this change. -Doug From Ulf.Zibis at gmx.de Fri Apr 27 12:14:10 2012 From: Ulf.Zibis at gmx.de (Ulf Zibis) Date: Fri, 27 Apr 2012 14:14:10 +0200 Subject: Remove the assert in Integer.valueOf() In-Reply-To: <4F9592ED.3040309@univ-mlv.fr> References: <4F9592ED.3040309@univ-mlv.fr> Message-ID: <4F9A8D92.6080407@gmx.de> Am 23.04.2012 19:35, schrieb R?mi Forax: > Hi guys, > I've found a case where assert is harmful because it doesn't > play well with Hotspot inlining heuristic. > [...] > I think it's a good idea to comment this assert. While you are there: IntegerCache.cache/high/low are static final, so should be named _upper case_. Another optimization: public static Integer valueOf(int i) { if (i >= 0) { if (i <= IntegerCache.HIGH) return IntegerCache.POS[i]; } else { if (i >= IntegerCache.LOW) return IntegerCache.NEG[~i]; } return new Integer(i); } -Ulf From david.holmes at oracle.com Fri Apr 27 12:25:27 2012 From: david.holmes at oracle.com (David Holmes) Date: Fri, 27 Apr 2012 22:25:27 +1000 Subject: RFR: 7103570 AtomicIntegerFieldUpdater does not work when SecurityManager is installed In-Reply-To: <4F9A83CB.2060307@cs.oswego.edu> References: <4F8FF873.50301@oracle.com> <4F90A8D1.8010903@oracle.com> <4F9A24CB.5030102@oracle.com> <4F9A83CB.2060307@cs.oswego.edu> Message-ID: <4F9A9037.1090402@oracle.com> On 27/04/2012 9:32 PM, Doug Lea wrote: > On 04/27/12 00:47, David Holmes wrote: >> Due to a problem with jtreg and the installation of a security manager >> I've had >> to modify the test to install the security manager itself. >> >> updated webrev: >> >> http://cr.openjdk.java.net/~dholmes/7103570/webrev.02/ >> > > Looks OK, although the main sources seems to omit a little > clean-up day patch from last year of replacing "*" imports: > > - import java.lang.reflect.*; > + import java.lang.reflect.Field; > + import java.lang.reflect.Modifier; > > The jsr166 versions are otherwise now synced with this change. Thanks Doug. I've applied that cleanup: http://cr.openjdk.java.net/~dholmes/7103570/webrev.03/ David ----- > -Doug > From Alan.Bateman at oracle.com Fri Apr 27 13:27:31 2012 From: Alan.Bateman at oracle.com (Alan Bateman) Date: Fri, 27 Apr 2012 14:27:31 +0100 Subject: Review Request: 7164376 Replace use of sun.security.action.LoadLibraryAction In-Reply-To: <4F9998CF.9000308@oracle.com> References: <4F9998CF.9000308@oracle.com> Message-ID: <4F9A9EC3.1020007@oracle.com> On 26/04/2012 19:49, Mandy Chung wrote: > 7164376 Replace use of sun.security.action.LoadLibraryAction > with direct call of System.loadLibrary > > Webrev: > http://cr.openjdk.java.net/~mchung/jdk8/webrevs/7164376/webrev.00/ > > This change is required for jdk modularization. I went through the patch file and it looks good to me. I also agree with removing sun.security.action.LoadLibraryAction to ensure that new cases don't appear. -Alan From jim.gish at oracle.com Fri Apr 27 22:21:57 2012 From: jim.gish at oracle.com (Jim Gish) Date: Fri, 27 Apr 2012 18:21:57 -0400 Subject: RFR: 5015163 "(str) String merge/join that is the inverse of String.split()" into JDK 8 Message-ID: <4F9B1C05.1080101@oracle.com> This enhancement proposal has a long history. The most recent attempt to get some String.join() methods was by Joe Darcy back in 2009 ( http://mail.openjdk.java.net/pipermail/core-libs-dev/2009-October/002967.html) He started with the changes that Remi Forax had done 8 months prior to that, which Remi had attempted a year before that! I've taken the work that Remi and Joe did and am trying again. There was a lot of discussion that was generated and that is why this has died on the vine a number of times. I realize that the current proposal may also generate discussion, but I think this had merit 4 years ago and still does. We won't satisfy everyone. It may not be perfect (what is?!), but if we can look at it from the perspective that something is better than nothing, then we ought to attempt a quick review and get this in. Having said that, I ask that you please take a look at the http://cr.openjdk.java.net/~jgish/5015163/webrev/ Just a few words, based on the previous discussion, to set some context. * join() is (roughlty) intended to be the inverse of split() * example: "Hi there".join("-", "Bill", "Joe", "Zoe") will yield "Hi there-Bill-Joe-Zoe" * in the original proposal the delimiter character was what you started with, i.e. o "-".join( "Hi there", "Bill", "Joe", "Zoe") yielded the same result as above o it seemed awkward to have the delimiter be the String instance that the join was performed on. I agree and so have made the first parameter of the join be the delimiter. * there was a lot of discussion about the pros and cons of making join() a static method vs an instance method. The point was made then, and I concur, that given that split() is an instance method, it only makes sense that join() be one too. Certainly there are other perspectives on this and one could argue the merit of each and every one of them, but in the interests of progress, I think the the split()/join() similarity argument is the most compelling and natural. Thanks, Jim Gish From forax at univ-mlv.fr Fri Apr 27 22:38:20 2012 From: forax at univ-mlv.fr (=?ISO-8859-1?Q?R=E9mi_Forax?=) Date: Sat, 28 Apr 2012 00:38:20 +0200 Subject: Remove the assert in Integer.valueOf() In-Reply-To: <4F9A12AA.8000605@oracle.com> References: <4F9592ED.3040309@univ-mlv.fr> <4F95EFDC.9090100@gmx.de> <4F96B108.70406@univ-mlv.fr> <4F96C05E.6040001@oracle.com> <4F9A12AA.8000605@oracle.com> Message-ID: <4F9B1FDC.60507@univ-mlv.fr> On 04/27/2012 05:29 AM, Joe Darcy wrote: > On 4/24/2012 8:01 AM, Alan Bateman wrote: >> On 24/04/2012 14:56, R?mi Forax wrote: >>> >>> Here, I don't really ask for tweaking something but more to remove >>> an assert >>> which do something which is unrelated to the current algorithm. >>> In my opinion, it's a debug assert used during the development >>> that slip into the production code. The fact that the range [-128, >>> 127] should be >>> covered by the cache is mandated by the JLS, but if you really want >>> an assert >>> you should move it when high and low are initialized (they are final) >>> and not where they are used. >>> >>> I also agree that the inlining heuristic should be changed and >>> I'm sure that everybody that have looked to the inlining heuristic >>> code of Hotspot will agree with that >>> but this is somehow unrelated to the problem. >>> This is how I've found this assert, >>> it doesn't change the fact that this assert should not be there. >> I added that assert as part of the work of 6807702. You can't use >> asserts in code that is executed before system initialization is >> complete and I think this is why we put the assert is valueOf rather >> than in the initializer. I don't have any objection to removing it, >> assuming Joe is okay with it too. >> >> -Alan >> >> [1] http://hg.openjdk.java.net/jdk8/tl/jdk/rev/4c3f752993a5 > > Hi Alan, > > I don't object to the assert being removed if asserts or > assert-equivalent checks are added in the IntegerCache class. I have moved the assert into the static block of IntegerCache. For Alan, because IntegerCache is loaded when Integer.valueOf() is called the first time the assert code is checked around the same time so after the system init but only once. webrev is here: http://cr.openjdk.java.net/~forax/integer_valueof/ and I need a bug for it :) > > Thanks, > > -Joe cheers, R?mi From forax at univ-mlv.fr Fri Apr 27 22:42:48 2012 From: forax at univ-mlv.fr (=?ISO-8859-1?Q?R=E9mi_Forax?=) Date: Sat, 28 Apr 2012 00:42:48 +0200 Subject: Remove the assert in Integer.valueOf() In-Reply-To: <4F9A8D92.6080407@gmx.de> References: <4F9592ED.3040309@univ-mlv.fr> <4F9A8D92.6080407@gmx.de> Message-ID: <4F9B20E8.8090409@univ-mlv.fr> On 04/27/2012 02:14 PM, Ulf Zibis wrote: > Am 23.04.2012 19:35, schrieb R?mi Forax: >> Hi guys, >> I've found a case where assert is harmful because it doesn't >> play well with Hotspot inlining heuristic. >> [...] >> I think it's a good idea to comment this assert. > Hi Ulf, > While you are there: > IntegerCache.cache/high/low are static final, so should be named > _upper case_. Not done because the system property is also spelled in lower case. > > Another optimization: > public static Integer valueOf(int i) { > if (i >= 0) { > if (i <= IntegerCache.HIGH) > return IntegerCache.POS[i]; > } else { > if (i >= IntegerCache.LOW) > return IntegerCache.NEG[~i]; > } > return new Integer(i); > } > Can you explain a little bit more why it's more efficient ? Given that low and high are constant for the JIT, I'm not sure the current code do bounds checking at all. > > -Ulf > R?mi From forax at univ-mlv.fr Fri Apr 27 23:01:37 2012 From: forax at univ-mlv.fr (=?ISO-8859-1?Q?R=E9mi_Forax?=) Date: Sat, 28 Apr 2012 01:01:37 +0200 Subject: RFR: 5015163 "(str) String merge/join that is the inverse of String.split()" into JDK 8 In-Reply-To: <4F9B1C05.1080101@oracle.com> References: <4F9B1C05.1080101@oracle.com> Message-ID: <4F9B2551.9070506@univ-mlv.fr> Hi Jim, Yes, I've basically try to submit a patch each time I've written a method join in one of my application :) The funny think (in fact it's even not funny) is that I think that this methods should not be in String anymore. In Java 8, we will have defender methods so you can write join directly on an Iterable. And there is some discussion to also allow defender methods on arrays too, so we may can write a method join on Object[] too (on an interface inherited from Object[] to be precise). I really think that list.join(",") is better than "".join(",", list) and ["foo", "bar"].join(",") is better than "".join(",", ["foo", "bar"]). but maybe I'm wrong. About the patch, you don't need to check the parameter in String because you will test them in AbstractStringBuilder. Given that you don't have to store the exception message in String anymore. (by the way, the static fields are declared transient which is really weird, as far as I know, we don't serialize static field values). R?mi On 04/28/2012 12:21 AM, Jim Gish wrote: > This enhancement proposal has a long history. The most recent > attempt to get some String.join() methods was by Joe Darcy back in > 2009 ( > http://mail.openjdk.java.net/pipermail/core-libs-dev/2009-October/002967.html) > > > He started with the changes that Remi Forax had done 8 months prior to > that, which Remi had attempted a year before that! > > I've taken the work that Remi and Joe did and am trying again. > > There was a lot of discussion that was generated and that is why this > has died on the vine a number of times. I realize that the current > proposal may also generate discussion, but I think this had merit 4 > years ago and still does. We won't satisfy everyone. It may not be > perfect (what is?!), but if we can look at it from the perspective > that something is better than nothing, then we ought to attempt a > quick review and get this in. > > Having said that, I ask that you please take a look at the > http://cr.openjdk.java.net/~jgish/5015163/webrev/ > > > Just a few words, based on the previous discussion, to set some context. > > * join() is (roughlty) intended to be the inverse of split() > * example: "Hi there".join("-", "Bill", "Joe", "Zoe") will yield "Hi > there-Bill-Joe-Zoe" > * in the original proposal the delimiter character was what you > started with, i.e. > o "-".join( "Hi there", "Bill", "Joe", "Zoe") yielded the > same result as above > o it seemed awkward to have the delimiter be the String instance > that the join was performed on. I agree and so have made the > first parameter of the join be the delimiter. > * there was a lot of discussion about the pros and cons of making > join() a static method vs an instance method. The point was made > then, and I concur, that given that split() is an instance method, > it only makes sense that join() be one too. Certainly there are > other perspectives on this and one could argue the merit of each and > every one of them, but in the interests of progress, I think the > the split()/join() similarity argument is the most compelling and > natural. > > > Thanks, > Jim Gish > > From joe.darcy at oracle.com Fri Apr 27 23:32:43 2012 From: joe.darcy at oracle.com (Joseph Darcy) Date: Fri, 27 Apr 2012 16:32:43 -0700 Subject: Remove the assert in Integer.valueOf() In-Reply-To: <4F9B1FDC.60507@univ-mlv.fr> References: <4F9592ED.3040309@univ-mlv.fr> <4F95EFDC.9090100@gmx.de> <4F96B108.70406@univ-mlv.fr> <4F96C05E.6040001@oracle.com> <4F9A12AA.8000605@oracle.com> <4F9B1FDC.60507@univ-mlv.fr> Message-ID: <4F9B2C9B.1070400@oracle.com> Hi Remi, On 4/27/2012 3:38 PM, R?mi Forax wrote: > On 04/27/2012 05:29 AM, Joe Darcy wrote: >> On 4/24/2012 8:01 AM, Alan Bateman wrote: >>> On 24/04/2012 14:56, R?mi Forax wrote: >>>> >>>> Here, I don't really ask for tweaking something but more to remove >>>> an assert >>>> which do something which is unrelated to the current algorithm. >>>> In my opinion, it's a debug assert used during the development >>>> that slip into the production code. The fact that the range [-128, >>>> 127] should be >>>> covered by the cache is mandated by the JLS, but if you really want >>>> an assert >>>> you should move it when high and low are initialized (they are final) >>>> and not where they are used. >>>> >>>> I also agree that the inlining heuristic should be changed and >>>> I'm sure that everybody that have looked to the inlining heuristic >>>> code of Hotspot will agree with that >>>> but this is somehow unrelated to the problem. >>>> This is how I've found this assert, >>>> it doesn't change the fact that this assert should not be there. >>> I added that assert as part of the work of 6807702. You can't use >>> asserts in code that is executed before system initialization is >>> complete and I think this is why we put the assert is valueOf rather >>> than in the initializer. I don't have any objection to removing it, >>> assuming Joe is okay with it too. >>> >>> -Alan >>> >>> [1] http://hg.openjdk.java.net/jdk8/tl/jdk/rev/4c3f752993a5 >> >> Hi Alan, >> >> I don't object to the assert being removed if asserts or >> assert-equivalent checks are added in the IntegerCache class. > > I have moved the assert into the static block of IntegerCache. > For Alan, because IntegerCache is loaded when Integer.valueOf() is > called the first time > the assert code is checked around the same time so after the system > init but only once. > > webrev is here: > http://cr.openjdk.java.net/~forax/integer_valueof/ > and I need a bug for it :) Here is your bug: 7165102 Only run assertion on Integer autoboxing cache size once However, I'd prefer the assert appear right after the 777 high = h; assignment. Cheers, -Joe From paul.sandoz at oracle.com Mon Apr 30 09:03:10 2012 From: paul.sandoz at oracle.com (Paul Sandoz) Date: Mon, 30 Apr 2012 11:03:10 +0200 Subject: RFR: 5015163 "(str) String merge/join that is the inverse of String.split()" into JDK 8 In-Reply-To: <4F9B2551.9070506@univ-mlv.fr> References: <4F9B1C05.1080101@oracle.com> <4F9B2551.9070506@univ-mlv.fr> Message-ID: On Apr 28, 2012, at 1:01 AM, R?mi Forax wrote: > Hi Jim, > Yes, I've basically try to submit a patch each time I've written a method join > in one of my application :) > > The funny think (in fact it's even not funny) is that I think that this methods > should not be in String anymore. In Java 8, we will have defender methods > so you can write join directly on an Iterable. And there is some discussion > to also allow defender methods on arrays too, > so we may can write a method join on Object[] too > (on an interface inherited from Object[] to be precise). > > I really think that list.join(",") is better than "".join(",", list) and > ["foo", "bar"].join(",") is better than "".join(",", ["foo", "bar"]). > but maybe I'm wrong. > Good point. Although i don't see the harm with such methods on String that defer, or are required if say defender methods on arrays never come about. There are also more general cases of interpose and interleave (see Clojure's functions as an example) since join can be implemented using interpose which can be implemented using interleave. Not saying join should be implemented that way (not so optimal for Strings only) but i think such functions are very useful. I am not tracking the lambda library work very closely, have such functions been considered? Paul. From Alan.Bateman at oracle.com Mon Apr 30 16:09:16 2012 From: Alan.Bateman at oracle.com (Alan Bateman) Date: Mon, 30 Apr 2012 17:09:16 +0100 Subject: Remove the assert in Integer.valueOf() In-Reply-To: <4F9B1FDC.60507@univ-mlv.fr> References: <4F9592ED.3040309@univ-mlv.fr> <4F95EFDC.9090100@gmx.de> <4F96B108.70406@univ-mlv.fr> <4F96C05E.6040001@oracle.com> <4F9A12AA.8000605@oracle.com> <4F9B1FDC.60507@univ-mlv.fr> Message-ID: <4F9EB92C.3080406@oracle.com> On 27/04/2012 23:38, R?mi Forax wrote: > : > I have moved the assert into the static block of IntegerCache. > For Alan, because IntegerCache is loaded when Integer.valueOf() is > called the first time > the assert code is checked around the same time so after the system > init but only once. > > webrev is here: > http://cr.openjdk.java.net/~forax/integer_valueof/ > and I need a bug for it :) Looks fine me as the initialization is now different compared to when this property was introduced (when introduced the IntegerCache was initialized via System.initializeSystemClass). -Alan. From jim.gish at oracle.com Mon Apr 30 14:23:26 2012 From: jim.gish at oracle.com (Jim Gish) Date: Mon, 30 Apr 2012 10:23:26 -0400 Subject: RFR: 5015163 "(str) String merge/join that is the inverse of String.split()" into JDK 8 In-Reply-To: <4F9B2551.9070506@univ-mlv.fr> References: <4F9B1C05.1080101@oracle.com> <4F9B2551.9070506@univ-mlv.fr> Message-ID: <4F9EA05E.6020401@oracle.com> Thanks R?mi, I'll take a look at defender methods on Iterable. As far as the parameter checks on String -- I had the same "Aha!" moment as soon as I got in my car to drive home on Friday. However, it does come down to a philosophy of style in that I'm in favor of (1) catching and reporting errors as soon as possible, and (2) not depending on the implementation details of other methods (particularly other classes) of which I'm a client. On the other hand, given this is "core" I realize that performance matters as well as locality of reference, so there is a trade off between deferring the check and sharing the static result message string. Let's see what others think. As far as transient on the static field -- I also realized as I was driving away that statics might not be serialized so transient is unnecessary. Thanks, Jim On 04/27/2012 07:01 PM, R?mi Forax wrote: > Hi Jim, > Yes, I've basically try to submit a patch each time I've written a > method join > in one of my application :) > > The funny think (in fact it's even not funny) is that I think that > this methods > should not be in String anymore. In Java 8, we will have defender methods > so you can write join directly on an Iterable. And there is some > discussion > to also allow defender methods on arrays too, > so we may can write a method join on Object[] too > (on an interface inherited from Object[] to be precise). > > I really think that list.join(",") is better than "".join(",", list) and > ["foo", "bar"].join(",") is better than "".join(",", ["foo", "bar"]). > but maybe I'm wrong. If we do this, maybe the method should be called "list.joinWith( String delimiter )" instead of "list.join( String delimiter )" > > About the patch, you don't need to check the parameter in String because > you will test them in AbstractStringBuilder. > Given that you don't have to store the exception message in String > anymore. > (by the way, the static fields are declared transient which is really > weird, > as far as I know, we don't serialize static field values). > > R?mi > > On 04/28/2012 12:21 AM, Jim Gish wrote: >> This enhancement proposal has a long history. The most recent >> attempt to get some String.join() methods was by Joe Darcy back in >> 2009 ( >> http://mail.openjdk.java.net/pipermail/core-libs-dev/2009-October/002967.html) >> >> >> He started with the changes that Remi Forax had done 8 months prior >> to that, which Remi had attempted a year before that! >> >> I've taken the work that Remi and Joe did and am trying again. >> >> There was a lot of discussion that was generated and that is why this >> has died on the vine a number of times. I realize that the current >> proposal may also generate discussion, but I think this had merit 4 >> years ago and still does. We won't satisfy everyone. It may not be >> perfect (what is?!), but if we can look at it from the perspective >> that something is better than nothing, then we ought to attempt a >> quick review and get this in. >> >> Having said that, I ask that you please take a look at the >> http://cr.openjdk.java.net/~jgish/5015163/webrev/ >> >> >> Just a few words, based on the previous discussion, to set some context. >> >> * join() is (roughlty) intended to be the inverse of split() >> * example: "Hi there".join("-", "Bill", "Joe", "Zoe") will yield "Hi >> there-Bill-Joe-Zoe" >> * in the original proposal the delimiter character was what you >> started with, i.e. >> o "-".join( "Hi there", "Bill", "Joe", "Zoe") yielded the >> same result as above >> o it seemed awkward to have the delimiter be the String instance >> that the join was performed on. I agree and so have made the >> first parameter of the join be the delimiter. >> * there was a lot of discussion about the pros and cons of making >> join() a static method vs an instance method. The point was made >> then, and I concur, that given that split() is an instance method, >> it only makes sense that join() be one too. Certainly there are >> other perspectives on this and one could argue the merit of each and >> every one of them, but in the interests of progress, I think the >> the split()/join() similarity argument is the most compelling and >> natural. >> >> >> Thanks, >> Jim Gish >> >> > From chris.hegarty at oracle.com Mon Apr 30 21:30:55 2012 From: chris.hegarty at oracle.com (Chris Hegarty) Date: Mon, 30 Apr 2012 22:30:55 +0100 Subject: RFR: 7103570 AtomicIntegerFieldUpdater does not work when SecurityManager is installed In-Reply-To: <4F9A9037.1090402@oracle.com> References: <4F8FF873.50301@oracle.com> <4F90A8D1.8010903@oracle.com> <4F9A24CB.5030102@oracle.com> <4F9A83CB.2060307@cs.oswego.edu> <4F9A9037.1090402@oracle.com> Message-ID: <4F9F048F.6020700@oracle.com> On 27/04/12 13:25, David Holmes wrote: > > http://cr.openjdk.java.net/~dholmes/7103570/webrev.03/ Sorry for the delay on this. The change looks fine to me. -Chris. > > David > ----- > >> -Doug >> From Ulf.Zibis at gmx.de Mon Apr 30 22:09:06 2012 From: Ulf.Zibis at gmx.de (Ulf Zibis) Date: Tue, 01 May 2012 00:09:06 +0200 Subject: Remove the assert in Integer.valueOf() In-Reply-To: <4F9B20E8.8090409@univ-mlv.fr> References: <4F9592ED.3040309@univ-mlv.fr> <4F9A8D92.6080407@gmx.de> <4F9B20E8.8090409@univ-mlv.fr> Message-ID: <4F9F0D82.301@gmx.de> Hi R?mi, Am 28.04.2012 00:42, schrieb R?mi Forax: >> While you are there: >> IntegerCache.cache/high/low are static final, so should be named _upper case_. > > Not done because the system property is also spelled in lower case. Hm, but does that justify violating very common code conventions? IMO it's inconvenient while reading the code. > >> >> Another optimization: >> public static Integer valueOf(int i) { >> if (i >= 0) { >> if (i <= IntegerCache.HIGH) >> return IntegerCache.POS[i]; >> } else { >> if (i >= IntegerCache.LOW) >> return IntegerCache.NEG[~i]; >> } >> return new Integer(i); >> } >> > > Can you explain a little bit more why it's more efficient ? 1. Compare against 0 is little faster than against a constant which must be loaded as operand. 2. As positive arguments should be more frequent, my version prevents from calculating the index every time: IntegerCache.cache[i + (-IntegerCache.low)] 3. Client VM would profit from less bytecode instructions to go through, as there is less inlining. > Given that low and high are constant for the JIT, I'm not sure the current code > do bounds checking at all. I do not understand this. 'i' is not constant, so should be checked. ========================================== We must be careful with Integer.MAX_VALUE as maximum array size. See: http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=7153247 and: java.lang.AbstractCollection.MAX_ARRAY_SIZE Additionally, I think, *the assert is superfluous at all*, as 'high' can never be smaller than 127. You can see this, if you compact the code: static { // high value may be configured by property String cacheHigh = sun.misc.VM.getSavedProperty("java.lang.Integer.IntegerCache.high"); /********** no need for variable i : **********/ int h = 127; if (cacheHigh != null) { h = Math.max(parseInt(cacheHigh), 127); // Maximum array size is Integer.MAX_VALUE h = Math.min(h, Integer.MAX_VALUE - (-low)); /********** little shorter : **********/ // Maximum array size is Integer.MAX_VALUE h = Math.min(Integer.MAX_VALUE - (-low), Math.max(parseInt(cacheHigh), 127)); } high = h; /********** more simple : **********/ int h = 0; if (cacheHigh != null) { // Maximum array size is Integer.MAX_VALUE h = Math.min(Integer.MAX_VALUE - (-low), parseInt(cacheHigh)); } high = Math.max(h, 127); /********** no need for variable h : **********/ if (cacheHigh != null) // Maximum array size is Integer.MAX_VALUE high = Math.min(Integer.MAX_VALUE - (-low), Math.max(parseInt(cacheHigh), 127)); else high = 127; /********** shorter : **********/ high = (cacheHigh == null) ? 127 : // Maximum array size is Integer.MAX_VALUE Math.min(Integer.MAX_VALUE - (-low), Math.max(parseInt(cacheHigh), 127)); /********** most short : **********/ // Maximum array size is Integer.MAX_VALUE high = Math.max(127, Math.min((cacheHigh == null) ? 127 : parseInt(cacheHigh), Integer.MAX_VALUE - (-low))); assert IntegerCache.high >= 127; // range [-128, 127] must be interned (JLS7 5.1.7) cache = new Integer[(high - low) + 1]; for(int j = low, k = 0; k < cache.length; k++, j++) cache[k] = new Integer(j); } -Ulf From coleen.phillimore at oracle.com Thu Apr 19 15:08:11 2012 From: coleen.phillimore at oracle.com (coleen.phillimore at oracle.com) Date: Thu, 19 Apr 2012 15:08:11 -0000 Subject: hg: jdk8/tl/jdk: 2 new changesets Message-ID: <20120419150806.05A9C47179@hg.openjdk.java.net> Changeset: 77b35c5c4b95 Author: jmelvin Date: 2012-04-16 18:09 -0400 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/77b35c5c4b95 7130404: [macosx] "os.arch" value should be "x86_64" for compatibility with Apple JDK6 Summary: On Mac OS X, align system property "os.arch" with Apple legacy JDKs. Also, improve os.name string matching by using .contains() method instead of .startsWith(). This fix spans multiple repositories. Reviewed-by: dcubed, phh, ohair, katleman ! make/common/Defs-macosx.gmk ! make/common/shared/Platform.gmk ! src/share/classes/java/net/AbstractPlainDatagramSocketImpl.java ! src/share/classes/java/nio/Bits.java ! src/share/classes/java/util/prefs/Preferences.java ! src/share/classes/sun/awt/OSInfo.java ! src/share/classes/sun/font/FontUtilities.java ! src/share/classes/sun/launcher/LauncherHelper.java ! src/share/classes/sun/nio/cs/ext/ExtendedCharsets.java ! src/share/classes/sun/print/PSPrinterJob.java ! src/share/classes/sun/security/jgss/wrapper/SunNativeProvider.java ! src/share/classes/sun/security/krb5/Config.java ! src/share/classes/sun/security/krb5/Credentials.java ! src/share/classes/sun/security/provider/ByteArrayAccess.java ! src/solaris/classes/sun/nio/ch/DefaultAsynchronousChannelProvider.java ! src/solaris/classes/sun/nio/fs/DefaultFileSystemProvider.java ! src/solaris/classes/sun/print/UnixPrintServiceLookup.java ! test/demo/jvmti/DemoRun.java ! test/java/io/File/GetXSpace.java ! test/java/lang/ProcessBuilder/Basic.java ! test/java/lang/ProcessBuilder/Zombies.java ! test/java/lang/invoke/InvokeGenericTest.java ! test/java/lang/management/OperatingSystemMXBean/GetSystemLoadAverage.java ! test/java/nio/channels/FileChannel/Size.java ! test/java/nio/channels/FileChannel/Transfer.java ! test/java/nio/file/FileSystem/Basic.java ! test/sun/nio/ch/SelProvider.java ! test/tools/launcher/TestHelper.java Changeset: 079bb040b2ee Author: coleenp Date: 2012-04-19 10:53 -0400 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/079bb040b2ee Merge From coleen.phillimore at oracle.com Thu Apr 19 15:09:57 2012 From: coleen.phillimore at oracle.com (coleen.phillimore at oracle.com) Date: Thu, 19 Apr 2012 15:09:57 -0000 Subject: hg: jdk8/tl/corba: 7130404: [macosx] "os.arch" value should be "x86_64" for compatibility with Apple JDK6 Message-ID: <20120419150952.7DEC24717A@hg.openjdk.java.net> Changeset: c6c0b1047985 Author: jmelvin Date: 2012-04-16 17:10 -0400 URL: http://hg.openjdk.java.net/jdk8/tl/corba/rev/c6c0b1047985 7130404: [macosx] "os.arch" value should be "x86_64" for compatibility with Apple JDK6 Summary: On Mac OS X, align system property "os.arch" with Apple legacy JDKs. Also, improve os.name string matching by using .contains() method instead of .startsWith(). This fix spans multiple repositories. Reviewed-by: dcubed, phh, ohair, katleman ! make/common/shared/Platform.gmk