Index: /src/main/java/java/io/ObjectStreamField.java =================================================================== --- /src/main/java/java/io/ObjectStreamField.java (revision 388015) +++ /src/main/java/java/io/ObjectStreamField.java (working copy) @@ -1,4 +1,4 @@ -/* Copyright 1998, 2005 The Apache Software Foundation or its licensors, as applicable +/* Copyright 1998, 2006 The Apache Software Foundation or its licensors, as applicable * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -267,6 +267,15 @@ return this.getClass().getName() + '(' + getName() + ':' + getType() + ')'; } + + /** + * Denote whether the object is unshared or shared. + * + * @return a boolean value indicating whether the object is unshared or not + */ + public boolean isUnshared() { + return unshared; + } /** * Sorts the fields for dumping. Primitive types come first, then regular @@ -288,7 +297,7 @@ Sorter.sort(fields, fieldDescComparator); } } - + void resolve(ClassLoader loader) { if (typeString.length() == 1) { switch (typeString.charAt(0)) { Index: /src/main/java/java/io/PushbackInputStream.java =================================================================== --- /src/main/java/java/io/PushbackInputStream.java (revision 388015) +++ /src/main/java/java/io/PushbackInputStream.java (working copy) @@ -1,4 +1,4 @@ -/* Copyright 1998, 2004 The Apache Software Foundation or its licensors, as applicable +/* Copyright 1998, 2006 The Apache Software Foundation or its licensors, as applicable * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -15,7 +15,6 @@ package java.io; - /** * PushbackInputStream is a filter class which allows bytes read to be pushed * back into the stream so that they can be reread. Parsers may find this @@ -292,4 +291,30 @@ } else throw new IOException(); } + + /** + * Make a mark of the current position in the stream but the mark method + * does nothing. + * + * @param readlimit + * the maximum number of bytes that are able to be read before the + * mark becomes invalid + * @override the method mark in FilterInputStream + */ + public void mark(int readlimit) { + return; + } + + /** + * Reset current position to the mark made previously int the stream, but + * the reset method will throw IOException and do nothing else if called. + * + * @override the method reset in FilterInputStream + * @throws IOException + * If the method is called + */ + + public void reset() throws IOException { + throw new IOException(); + } } Index: /src/main/java/java/io/FilterInputStream.java =================================================================== --- /src/main/java/java/io/FilterInputStream.java (revision 388015) +++ /src/main/java/java/io/FilterInputStream.java (working copy) @@ -29,7 +29,7 @@ /** * The target InputStream which is being filtered. */ - protected InputStream in; + protected volatile InputStream in; /** * Constructs a new FilterInputStream on the InputStream in. Index: /src/main/java/java/io/ObjectStreamConstants.java =================================================================== --- /src/main/java/java/io/ObjectStreamConstants.java (revision 388015) +++ /src/main/java/java/io/ObjectStreamConstants.java (working copy) @@ -1,4 +1,4 @@ -/* Copyright 1998, 2004 The Apache Software Foundation or its licensors, as applicable +/* Copyright 1998, 2006 The Apache Software Foundation or its licensors, as applicable * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -64,7 +64,7 @@ public static final byte TC_PROXYCLASSDESC = (byte) 0x7D; - public static final byte TC_MAX = 0x7D; + public static final byte TC_MAX = 0x7E; /** * The first object dumped gets assigned this handle/ID @@ -90,5 +90,15 @@ public static final byte SC_EXTERNALIZABLE = 0x04; public static final byte SC_BLOCK_DATA = 0x08; // If SC_EXTERNALIZABLE - + + /** + * constant for new enum + */ + public static final byte TC_ENUM = 0x7E; + + /** + * the bitmask denoting that the object is a enum + */ + public static final byte SC_ENUM = 0x10; + }