Commit Graph

36 Commits

Author SHA1 Message Date
Michael Koch
28c23a8cd3 ObjectInputStream.java: Re-ordered imports.
2004-09-24  Michael Koch  <konqueror@gmx.de>

	* java/io/ObjectInputStream.java:
	Re-ordered imports.

From-SVN: r88025
2004-09-24 10:48:12 +00:00
Casey Marshall
629a2d2b25 ObjectInputStream.java (callReadMethod): re-throw `ClassNotFoundException'.
2004-09-24  Casey Marshall <csm@gnu.org>

	* java/io/ObjectInputStream.java (callReadMethod): re-throw
	`ClassNotFoundException'.

From-SVN: r88023
2004-09-24 09:31:28 +00:00
Jeroen Frijters
73eb130916 ObjectInputStream.java (readObject): Delegate instantation of Externalizable classes to ObjectStreamClass.
2004-09-24  Jeroen Frijters  <jeroen@frijters.net>

	* java/io/ObjectInputStream.java (readObject): Delegate instantation
	of Externalizable classes to ObjectStreamClass.
	* java/io/ObjectStreamClass.java (newInstance): New method to
	instantiate Externalizable (while ignoring the accessibility of
	the constructor). (constructor): New field to cache the constructor.

From-SVN: r88019
2004-09-24 09:05:10 +00:00
Michael Koch
3d5f053c02 ObjectInputStream.java (readFields): Use long datatype when shifting byte values more then 24 bits left.
2004-07-09  Michael Koch  <konqueror@gmx.de>

	* java/io/ObjectInputStream.java (readFields): Use long datatype
	when shifting byte values more then 24 bits left.

From-SVN: r84382
2004-07-09 15:37:31 +00:00
Andrew Haley
deb3d52fec ObjectOutputStream.java: Add DEBUG statements everywhere.
2004-06-21  Andrew Haley  <aph@redhat.com>

	* java/io/ObjectOutputStream.java: Add DEBUG statements
	everywhere.
	(dumpElementln): New method.
	(depth): New field.
	* java/io/ObjectInputStream.java
	(currentClassLoader): Make native.
	(callersClassLoader): New field.
	(depth): New field.
	(readObject): ENDBLOCKDATA is generated if the class has a write
	method, not if it has a read method.
	(readObject): Save and restore this.currentObject and
	this.currentObjectStreamClass around calls to callReadMethod().
	* java/io/natObjectInputStream.cc (getCallersClassLoader): New
	method.

From-SVN: r83440
2004-06-21 16:52:14 +00:00
Michael Koch
9f714d5eec BufferedWriter.java, [...]: Fixed javadocs all over, rename arguments to match javadocs, fixed coding style.
2004-04-20  Michael Koch  <konqueror@gmx.de>

	* java/io/BufferedWriter.java,
	java/io/ByteArrayInputStream.java,
	java/io/CharArrayWriter.java,
	java/io/DataInput.java,
	java/io/DataInputStream.java,
	java/io/File.java,
	java/io/FilterInputStream.java,
	java/io/InputStream.java,
	java/io/InputStreamReader.java,
	java/io/ObjectInputStream.java,
	java/io/ObjectStreamClass.java,
	java/io/PipedInputStream.java,
	java/io/PipedReader.java,
	java/io/PushbackInputStream.java,
	java/io/PushbackReader.java,
	java/io/RandomAccessFile.java,
	java/io/SerializablePermission.java,
	java/io/StreamTokenizer.java,
	java/io/StringWriter.java,
	java/io/WriteAbortedException.java,
	java/io/Writer.java:
	Fixed javadocs all over, rename arguments to match javadocs,
	fixed coding style.

From-SVN: r80897
2004-04-20 11:37:41 +00:00
Michael Koch
763c1edf3b ObjectInputStream.java: Compile fix, damn I commited the wrong code.
2004-02-28  Michael Koch  <konqueror@gmx.de>

	* java/io/ObjectInputStream.java: Compile fix, damn I commited the
	wrong code.

From-SVN: r78629
2004-02-28 21:48:35 +00:00
Guilhem Lavaux
646e329010 2004-02-28 Guilhem Lavaux <guilhem@kaffe.org>
* java/io/ObjectInputStream.java
	(readClassDescriptor): Keep elements of the mapping non null.
	(checkTypeConsistency): New method.
	(readFields): Fixed main loop and base logic. Small reindentation.
	* java/io/ObjectStreamField.java
	(lookupField): New method to update the field reference.
	(checkFieldType): New method.
	* java/io/ObjectStreamClass.java
	(setClass, setFields): Call lookupField when building the field
	database. Check the real field type.

From-SVN: r78627
2004-02-28 21:28:53 +00:00
Ito Kazumitsu
af1967542f ObjectInputStream.java (readClassDescriptor): Avoid the overflow of fieldmapping.
2004-02-15  Ito Kazumitsu  <kaz@maczuka.gcd.org>

	* java/io/ObjectInputStream.java (readClassDescriptor): Avoid the
        overflow of fieldmapping.

From-SVN: r77843
2004-02-15 11:53:45 +00:00
Michael Koch
3298fd35f7 2004-02-06 Michael Koch <konqueror@gmx.de>
* java/io/ObjectInputStream.java
	(currentClassLoader): Reverted to old version of this method.

From-SVN: r77397
2004-02-06 14:05:37 +00:00
Jeroen Frijters
2941cc061a ObjectInputStream.java: Made all calls to dumpElement[ln] conditional on dump flag.
2004-02-06  Jeroen Frijters  <jeroen@frijters.net>

	* java/io/ObjectInputStream.java: Made all calls
	to dumpElement[ln] conditional on dump flag. (readObject): Changed to
	use cached info from ObjectStreamClass. (readClassDescriptor):
	Cache more information in ObjectStreamClass. (processResolution,
	readFields): Use cached info from ObjectStreamClass.
	(newObject): Throw exception instead of returning null for failure.
	(getField, getMethod, callReadMethod, setBooleanField, setByteField,
	setCharField, setDoubleField, setFloatField, setIntField,
	setLongField, setShortField, setObjectField, readObjectParams):
	Removed. (dumpElement, dumpElementln): Removed dump flag condition
	check.
	* java/io/ObjectStreamField.java (hasReadMethod): Removed.
	(setClass): Added call to cacheMethods() (findMethod): New method.
	(cacheMethods): New method. (ObjectStreamClass): Added call to
	cacheMethods(). (setFields): Cache fields. (getClassUID): Use
	AccessController.doPrivileged to invoke setAccessible.
	(readObjectMethod, readResolveMethod, realClassIsSerializable,
	realClassIsExternalizable, fieldMapping, firstNonSerializableParent):
	New fields.
	* java/io/ObjectStreamField.java (ObjectStreamField): New constructor.
	(ObjectStreamField): Removed FIXME workaround. (getTypeString,
	isPrimitive): Made safe for cases where type == null.
	(setBooleanField, setByteField, setCharField, setShortField,
	setIntField, setLongField, setFloatField, setDoubleField,
	setObjectField): New methods.

From-SVN: r77395
2004-02-06 13:27:36 +00:00
Michael Koch
bbe4ef8921 2004-01-09 Michael Koch <konqueror@gmx.de>
* java/awt/geom/PathIterator.java
	(WIND_EVEN_ODD): Removed redundant modifiers.
	(WIND_NON_ZERO): Likewise.
	(SEG_MOVETO): Likewise.
	(SEG_LINETO): Likewise.
	(SEG_QUADTO): Likewise.
	(SEG_CUBICTO): Likewise.
	(SEG_CLOSE): Likewise.
	* java/awt/image/SinglePixelPackedSampleModel.java:
	Removed redundant semicolon.
	* java/io/ObjectInputStream.java
	(inputGetObjectStreamClasses): Removed unused variable "ret_val".
	* java/util/logging/Filter.java
	(isLoggable): Removed redundant modifier.
	* java/util/logging/LogManager.java:
	Removed redundant semicolon.
	* java/util/logging/XMLFormatter.java
	(format): Removed unused variable "key".

From-SVN: r75570
2004-01-09 08:58:59 +00:00
Michael Koch
34998d6bb6 ObjectInputStream.java, [...]: Reformated, no functional code changes.
2003-12-30  Michael Koch  <konqueror@gmx.de>

	* java/io/ObjectInputStream.java,
	java/io/ObjectOutputStream.java,
	java/io/ObjectStreamClass.java:
	Reformated, no functional code changes.

From-SVN: r75236
2003-12-30 15:51:15 +00:00
Guilhem Lavaux
692fb023ef 2003-12-23 Guilhem Lavaux <guilhem@kaffe.org>
* java/io/ObjectInputStream.java
	(getField): Handle transient and non persistent fields.
	(readClassDescriptor): Better error handling, use the right
	class loader.
	(readFields): Fields marked as not present in the stream
	or not to be set are not read and set.
	* java/io/ObjectInputStream.java
	(readFields): Changed implementation of GetField.
	(readClassDescriptor): Documented.
	* java/io/ObjectOutputStream.java
	(writeClassDescriptor): Added condition when to write class super
	class information.

From-SVN: r74985
2003-12-23 22:06:01 +00:00
Guilhem Lavaux
649a1a476c i2003-12-16 Guilhem Lavaux <guilhem@kaffe.org>
* java/io/ObjectInputStream.java
	(lookupClass): New method.
	(currentLoader): New method.
	(inputGetObjectStreamClasses): New method.
	(assignNewHandle): Documented.
	(currentClassLoader): Documented.
	* java/io/ObjectStreamClass.java
	(setClass): Changed API. Better handling of the imported/exported
	fields.
	(getSerialPersistentFields): Make it throw previously caught exceptions
	so they can handled in setClass.

From-SVN: r74693
2003-12-16 13:45:01 +00:00
Guilhem Lavaux
9a3a96d0a5 ObjectInputStream.java (setBooleanField): Throw an InvalidClassException if the field hasn't the required type...
2003-12-16 Guilhem Lavaux <guilhem@kaffe.org>

	* java/io/ObjectInputStream.java (setBooleanField):
	Throw an InvalidClassException if the field hasn't the required type,
	documentation added.
	(setByteField) Likewise.
	(setCharField) Likewise.
	(setDoubleField) Likewise.
	(setFloatField) Likewise.
	(setIntField) Likewise.
	(setShortField) Likewise.
	(setLongField) Likewise.
	(setObjectField) Likewise.

From-SVN: r74688
2003-12-16 11:46:23 +00:00
Tom Tromey
e9c00e62d0 More for PR libgcj/11737:
* java/io/ObjectInputStream.java (processResolution): Use
	getMethod.
	(getMethod): Make method accessible.
	(getField): Make field accessible.
	(setBooleanField): Don't call setAccessible here.
	(setByteField, setCharField, setDoubleField, setFloatField,
	setIntField, setLongField, setShortField, setObjectField):
	Likewise.
	(callReadMethod): Don't check whether method is null.  Catch
	NoSuchMethodException.
	* java/io/ObjectOutputStream.java (callWriteMethod): Initialize
	cause on thrown exceptions.

From-SVN: r70038
2003-08-01 03:34:52 +00:00
Michael Koch
3cc9a95d27 2003-06-25 Michael Koch <konqueror@gmx.de>
* java/io/ObjectInputStream.java
	(readClassDescriptor): New method.
	(readObject): Moved functionality to readClassDescriptor().
	* java/io/ObjectOutputStream.java
	(writeClassDescriptor): New method.
	(writeObject): Moved functionality to writeClassDescriptor().

From-SVN: r68465
2003-06-25 06:31:59 +00:00
Jeff Sturm
a8e097d6db re PR libgcj/10838 (GCC 3.3 [libjava]: java.io.ObjectInputStream syntax error)
PR libgcj/10838:
* java/io/ObjectInputStream (enableResolveObject):
Fixed spelling of permission name.

From-SVN: r67111
2003-05-23 03:15:36 +00:00
Michael Koch
ffe4ebba87 DataInputStream.java (): Wrapped documentation line.
2003-03-24  Michael Koch  <konqueror@gmx.de>

	* java/io/DataInputStream.java
	(): Wrapped documentation line.
	(): Fixed @return tag.
	* java/io/DataOutputStream.java
	(written): Moved to top of class.
	(all methods): Merged documentation from classpath.
	* java/io/File.java:
	Merged copyright year with classpath.
	* java/io/FileInputStream.java
	(all methods): Merged documentation from classpath.
	* java/io/LineNumberReader.java
	(getLineNumber): Fixed @return tag.
	* java/io/ObjectInputStream.java.
	Reformatted.
	* java/io/ObjectOutputStream.java:
	Reformatted, fixed some @see tags.
	* java/io/OutputStreamWriter.java:
	Deleted empty line.
	* java/io/Writer.java:
	Reformatted.

From-SVN: r64780
2003-03-24 08:27:28 +00:00
Jeroen Frijters
70e2e8dc1d ObjectInputStream.java (readObject): Cleaned up the class hierarchy loop.
2003-02-14  Jeroen Frijters  <jeroen@sumatra.nl>

       * java/io/ObjectInputStream.java (readObject): Cleaned up the class
       hierarchy loop.
       (readFields(Object,ObjectStreamField[],boolean)): Changed argument
       list to Object,ObjectStreamClass, moved callReadMethod code up into
       readObject and added Class argument to all setXxxField calls.
       (callReadMethod): Changed Class argument to ObjectStreamClass to be
       consistent with ObjectOutputStream and to facilitate caching the
       Method in the future.
       (setBooleanField): Added Class argument.
       (setByteField): Likewise.
       (setCharField): Likewise.
       (setDoubleField): Likewise.
       (setFloatField): Likewise.
       (setIntField): Likewise.
       (setLongField): Likewise.
       (setShortField): Likewise.
       (setObjectField): Likewise.
       * java/io/ObjectOutputStream.java (writeObject): Cleaned up the
       class hierarchy loop.
       (defaultWriteObject): Call writeFields with new argument list.
       (writeFields(Object,ObjectStreamField[],boolean): Changed argument
       list to Object,ObjectStreamClass, moved callWriteMethod up into
       writeObject and added Class argument to all getXxxField calls.
       (callWriteMethod): Added ObjectStreamClass argument to be able to
       get the proper class to call getMethod on (each class can have (or
       not have) its own writeObject method).
       (getBooleanField): Added Class argument.
       (getByteField): Likewise.
       (getCharField): Likewise.
       (getDoubleField): Likewise.
       (getFloatField): Likewise.
       (getIntField): Likewise.
       (getLongField): Likewise.
       (getShortField): Likewise.
       (getObjectField): Likewise.
       * java/io/ObjectStreamClass.java (hasReadMethod): Added method to
       facilitate caching the Method object in the future.

From-SVN: r64351
2003-03-14 11:54:38 +00:00
Mark Wielaard
d91996637f ObjectInputStream.java: Reindent.
* java/io/ObjectInputStream.java: Reindent.
       * java/io/ObjectOutputStream.java: Likewise.

From-SVN: r63614
2003-03-01 15:05:46 +00:00
Mark Wielaard
4480b3dcf6 Makefile.am (nat_source_files): Remove java/io/natObjectOutputStream.cc.
* Makefile.am (nat_source_files): Remove
        java/io/natObjectOutputStream.cc.
        * Makefile.in: Regenerated.
        * mauve-libgcj: Don't exclude java.io.ObjectInputOutput tests.
        * java/io/ObjectStreamField.java (typename): New field.
        (ObjectStreamField(String, Class)): Initialize new field.
        (ObjectStreamField(String, String)): New Constructor.
        (getTypeCode): Use new field.
        (getTypeString): Use new field.
        * java/io/ObjectOutputStream.java (writeObject): Rethrow fatal
        ObjectStreamExceptions. Remember and reset old BlockDataMode.
        Handle reading of Proxy classes. Never drain(), just write
        TC_ENDBLOCKDATA. Rethrow ObjectStreamExceptions.
        (drain): Check writeDataAsBlocks before calling writeBlockDataHeader.
        (flush): Call flush(), not just drain().
        (writeBoolean): Always use blockDataOutput.
        (writeByte): Likewise.
        (writeShort): Likewise.
        (writeChar): Likewise.
        (writeInt): Likewise.
        (writeLong): Likewise.
        (writeFloat): Likewise.
        (writeDouble): Likewise.
        (writeBytes): Likewise.
        (putfield (put(String,Object))): Throw IllegalArgumentException if
        field cannot be found.
        (putfield (write(ObjectOutput))): Remember old BlockDataMode.
        (writeArraySizeAndElements): Write byte[] in one go.
        (writeFields): Write TC_ENDBLOCKDATA when call_write_method, otherwise
        set BlockDataMode to false.
        (annotateProxyClass): New method.
        (defaultProtocolVersion): Now defaults to PROTOCOL_VERSION_2
        (getField): No longer native.
        (getMethod): Likewise.
        (setBlockDataMode): Always drain() on switch, return old mode.
        (static): New static code block.
        * java/io/natObjectOutputStream.cc: Removed.
        * java/io/ObjectInputStream.java (getField): No longer native.
        (getMethod): Likewise.
        (readObject): Remember and reset old BlockDataMode. Track whether
        object is consumed. Handle TC_ENDBLOCKDATA, TC_PROXYCLASSDESC and
        TC_LONGSTRING.
        (defaultReadObject): Set BlockDataMode to false during readFields.
        (resolveClass): Create new SecurityManager if necessary.
        Use Class.forName() if null ClassLoader found.
        (read(byte[],int,int): Copy remaining bytes to data before calling
        readNextBlock().
        (readFields): Set and reset BlockDataMode on call_read_method.
        Catch NoSuchFieldErrors.
        (setBlockDataMode): Return old mode.
        (static): New static code block.
        * java/io/natObjectInputStream.cc (getField): Removed.
        (getMethod): Likewise.

From-SVN: r63556
2003-02-28 11:38:56 +00:00
Tom Tromey
d74732f5cd ObjectInputStream.java (resolveProxyClass): New method from Classpath.
* java/io/ObjectInputStream.java (resolveProxyClass): New method
	from Classpath.
	* Makefile.in: Rebuilt.
	* Makefile.am (rmi_java_source_files): Added new files.
	* gnu/java/rmi/RMIMarshalledObjectInputStream.java,
	gnu/java/rmi/RMIMarshalledObjectOutputStream.java,
	gnu/java/rmi/server/ConnectionRunnerPool.java: New files from
	Classpath.
	* gnu/java/rmi/dgc/DGCImpl.java,
	gnu/java/rmi/dgc/DGCImpl_Skel.java,
	gnu/java/rmi/dgc/DGCImpl_Stub.java,
	gnu/java/rmi/registry/RegistryImpl_Skel.java,
	gnu/java/rmi/registry/RegistryImpl_Stub.java,
	gnu/java/rmi/server/RMIHashes.java,
	gnu/java/rmi/server/RMIObjectInputStream.java,
	gnu/java/rmi/server/RMIObjectOutputStream.java,
	gnu/java/rmi/server/UnicastConnection.java,
	gnu/java/rmi/server/UnicastConnectionManager.java,
	gnu/java/rmi/server/UnicastRef.java,
	gnu/java/rmi/server/UnicastServer.java,
	gnu/java/rmi/server/UnicastServerRef.java,
	java/rmi/MarshalledObject.java,
	java/rmi/server/RMIClassLoader.java,
	java/rmi/server/RemoteObject.java,
	java/rmi/server/UnicastRemoteObject.java,
	java/security/SecureClassLoader.java: Merged from Classpath.

From-SVN: r57675
2002-10-01 03:46:43 +00:00
Mark Wielaard
5526ddf6fd [multiple changes]
2002-07-24  Mark Wielaard  <mark@klomp.org>

	* java/lang/reflect/natField.cc (setAddr): Check isAccessible().
	* java/io/ObjectInputStream.java (setBooleanField): Before setting
	field call setAccessible(true).
	(setByteField): Likewise.
	(setCharField): Likewise.
	(setDoubleField): Likewise.
	(setFloatField): Likewise.
	(setIntField): Likewise.
	(setLongField): Likewise.
	(setShortField): Likewise.
	(setObjectField): Likewise.

2002-07-24  Tom Tromey  <tromey@redhat.com>

	* java/io/ObjectInputStream.java (readObject) [TC_ARRAY]: Don't
	use toString() to format array element.

From-SVN: r55711
2002-07-24 16:05:34 +00:00
Mark Wielaard
92aaa24628 Add license clarification.
From-SVN: r49104
2002-01-22 22:40:42 +00:00
Tom Tromey
e3109d4c17 ObjectInputStream.java (enableResolveObject): Use correct security check.
* java/io/ObjectInputStream.java (enableResolveObject): Use
	correct security check.
	* java/io/ObjectOutputStream.java (enableReplaceObject): Use
	correct security check.

From-SVN: r48256
2001-12-21 22:51:41 +00:00
Tom Tromey
91c6dda6c7 Makefile.in: Rebuilt.
* Makefile.in: Rebuilt.
	* Makefile.am (java/lang/reflect/Method.h): ObjectInputStream now
	a friend.
	* java/lang/natClass.cc (getSignature): Only look at elements of
	non-null parameters.
	(getPrivateMethod): Removed old FIXME comment.
	* java/io/natObjectInputStream.cc (allocateObject): Removed old
	FIXME comment.
	(callConstructor): Simply use `NULL' for value of parameters.
	(ObjectClass): Removed.
	(ClassClass): Likewise.
	* java/io/ObjectInputStream.java (readObject): Fixed typo.

From-SVN: r47800
2001-12-09 00:17:07 +00:00
Bryce McKinlay
0cd99be737 re PR libgcj/2237 (serialization doesn't throw exception on failure)
Fix PR libgcj/2237:
	* java/io/ObjectStreamClass.java (setClass): Calculate
	serialVersionUID for local class and compare it against the UID
	from the Object Stream. Throw InvalidClassException upon mismatch.
	(setUID): Renamed to...
	(getClassUID): this. Return the calculated class UID rather than
	setting uid field directly.
	(getDefinedSUID): Removed.
	* java/io/ObjectInputStream.java (resolveClass): Use the
	three-argument Class.forName().
	* java/io/InvalidClassException (toString): Don't include classname in
	result if it is null.

From-SVN: r41567
2001-04-26 03:02:05 +01:00
Bryce McKinlay
7eecbdb322 BlockDataException.java: Removed.
* java/io/BlockDataException.java: Removed.
	* java/io/ObjectInputStream.java (readObject): Throw
	StreamCorruptedException, not BlockDataException.
	* Makefile.am: Remove BlockDataException.
	* Makefile.in: Rebuild.

From-SVN: r39616
2001-02-13 07:42:48 +00:00
Bryce McKinlay
60b7365f52 ObjectInputStream.java (read): AND byte with 0xff to make result unsigned.
* java/io/ObjectInputStream.java (read): AND byte with 0xff to make
	result unsigned.
	(read (byte[], int, int)): Only call readNextBlock() if the block
	buffer would actually be overrun. Increment blockDataPosition.
	(callReadMethod): Propagate exceptions from invocation target.
	* java/io/ObjectOutputStream.java (callWriteMethod): Propagate
	exceptions from invocation target.

From-SVN: r39293
2001-01-27 06:04:29 +00:00
Bryce McKinlay
213858c013 System.java (setProperties): Only call init_properties() if properties is null.
2000-11-24  Bryce McKinlay  <bryce@albatross.co.nz>

	* java/lang/System.java (setProperties): Only call init_properties()
	if properties is null.
	(getProperties): Ditto.
	(getProperty): Ditto.
	(setProperty): Call init_properties if properties are null.
	(prop_init): Remove field.
	* java/lang/natSystem.cc (init_properties): Synchronize the entire
	method. Check for null properties after synchronizing instead of
	prop_init flag. Set the properties field last for thread safety.

	* java/io/ObjectInputStream.java (ObjectInputStream): If DEBUG is set,
	test for gcj.dumpobjects property and enable object stream dumping
	if it is set.
	(dumpElement): No longer native.
	(dumpElementln): Ditto.
	(setDump): Do not define.
	* java/io/natObjectInputStream.cc (dumpElement): Removed.
	(dumpElementln): Removed.
	(setDump): Removed.

2000-11-24  Bryce McKinlay  <bryce@albatross.co.nz>

	* configure: Rebuilt.
	* Makefile.in: Rebuilt.
	* Makefile.am (built_java_source_files): Add Configuration.java.
	* configure.in: Add Configuration.java to CONFIG_FILES. Set
	LIBGCJDEBUG substitution if --enable-libgcj-debug is specified.
	Create `gnu' directory in the build tree.
	* gnu/classpath/Configuration.java.in: New file.

From-SVN: r37749
2000-11-26 01:48:04 +00:00
Warren Levy
a53785f90e ObjectInputStream.java (readObject): Added code to conditionally dump out the serialized data.
* java/io/ObjectInputStream.java (readObject): Added code to
	conditionally dump out the serialized data.
	Handle ENDBLOCKDATA case a bit more gracefully since the current
	behavior doesn't seem to work as expected.
	(readStreamHeader): Added code for serialized data dumper.
	(readNextBlock): Ditto.
	(readFields): Ditto.
	(dump): New private static field for turning on/off dumper.
	(setDump): New native method.
	(dumpElement): New native method.
	(dumpElementln): New native method.
	* java/io/natObjectInputStream.cc (setDump): New method.
	(dumpElement): New method.
	(dumpElementln): New method.

Serialization dumper.  Enable by configuring with --enable-libgcj-debug
and calling java.io.ObjectInputStream.setDump(true) in your test program.
The output will be generated as the object is deserialized (i.e. the
readObject() method is executed).

From-SVN: r37223
2000-11-03 08:04:33 +00:00
Warren Levy
bf3478059d Makefile.am: Removed java/io/Replaceable.java and java/io/Resolvable.java.
* Makefile.am: Removed java/io/Replaceable.java and
	java/io/Resolvable.java.
	* Makefile.in: Rebuilt.
	* gcj/javaprims.h: Removed Replaceable and Resolvable from java.io
	namespace.
	* java/io/ObjectInputStream.java (processResolution): Fixed typo
	in method name.
	(processResolution): Handle readResolve method via reflection with
	removal of Resolvable interface.
	* java/io/ObjectOutputStream.java (writeObject): Handle writeReplace
	method via reflection with removal of Replaceable interface.
	* java/io/Replaceable.java: Removed.
	* java/io/Resolvable.java: Removed.
	* java/security/Key.java (serialVersionUID): New field.
	* java/security/Provider.java (serialVersionUID): New field.
	* java/security/interfaces/DSAPrivateKey.java (serialVersionUID):
	New field.
	* java/security/interfaces/DSAPublicKey.java (serialVersionUID):
        New field.
	* java/sql/DataTruncation.java (serialVersionUID): New field.
	* java/sql/SQLException.java (serialVersionUID): New field.
	* java/sql/SQLWarning.java (serialVersionUID): New field.
	* java/util/Date.java (serialVersionUID): New field.
	(millis): Made transient.
	(readObject): New method.
	(writeObject): New method.

Serialization mods.
Note:  The interfaces java.io.Replaceable and java.io.Resolvable were only
temporary additions to JDK 1.2 beta versions and were not included
in the JDK 1.2 final.  The Serialization spec instructs how to deal
with their methods (via reflection).

From-SVN: r36736
2000-10-05 23:57:16 +00:00
Warren Levy
9b4773cbba ObjectInputStream.java (readFields): Turn off readDataFromBlock while reading via GetField.
* java/io/ObjectInputStream.java (readFields): Turn off
	readDataFromBlock while reading via GetField.
	(GetField$1.get(String, Object)): Pass Class of default value to
	getField.
	(getField): Allow for null default values.

	* java/io/ObjectOutputStream.java: Fixed typo in comment.
	(PutField$1.put): Fixed calls of checkType in most of the put
	methods to pass the correct parameter.
	(PutField$1.put(String, Object)): Allow for null value arg.
	(PutField$1.write): Turn off writeDataAsBlocks while writing via
	PutField.

	* java/io/ObjectStreamClass.java (serialPersistentFields): Fixed
	typo in spec'ed field name.
	(getSerialPersistentFields): Changed spelling of method to match
	the correct spelling of the spec'ed field name.

More serialization fixes per Mauve errors.

From-SVN: r35468
2000-08-04 00:42:20 +00:00
Tom Tromey
6c80c45e30 Jumbo patch:
* Imported beans and serialization
* Updated IA-64 port
* Miscellaneous bug fixes

From-SVN: r34028
2000-05-19 17:55:34 +00:00