summaryrefslogtreecommitdiff
path: root/libjava/java/io/ObjectStreamField.java
Commit message (Collapse)AuthorAgeFilesLines
* Major merge with Classpath.tromey2005-07-161-412/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | Removed many duplicate files. * HACKING: Updated.x * classpath: Imported new directory. * standard.omit: New file. * Makefile.in, aclocal.m4, configure: Rebuilt. * sources.am: New file. * configure.ac: Run Classpath configure script. Moved code around to support. Disable xlib AWT peers (temporarily). * Makefile.am (SUBDIRS): Added 'classpath' (JAVAC): Removed. (AM_CPPFLAGS): Added more -I options. (BOOTCLASSPATH): Simplified. Completely redid how sources are built. Include sources.am. * include/Makefile.am (tool_include__HEADERS): Removed jni.h. * include/jni.h: Removed (in Classpath). * scripts/classes.pl: Updated to look at built classes. * scripts/makemake.tcl: New file. * testsuite/libjava.jni/jni.exp (gcj_jni_compile_c_to_so): Added -I options. (gcj_jni_invocation_compile_c_to_binary): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@102082 138bc75d-0d04-0410-961f-82ee72b054a4
* Update FSF addresskcook2005-06-301-2/+2
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@101453 138bc75d-0d04-0410-961f-82ee72b054a4
* 2005-02-21 Bryce McKinlay <mckinlay@redhat.com>bryce2005-02-221-72/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Merge serialization from GNU Classpath. * gcj/method.h: Add missing #includes. * java/io/ObjectInputStream.java (readClassDescriptor): Check for primitive class IDs on the stream here... (resolveClass): ...not here. * java/io/ObjectStreamField.java: Use VMObjectStream class calls to set fields. * java/io/VMObjectStreamClass.java (setDoubleNative, setFloatNative, setLongNative, setIntNative, setShortNative, setCharNative, setByteNative, setBooleanNative, setObjectNative): New native methods. * java/io/natVMObjectStreamClass.java (setDoubleNative, setFloatNative, setLongNative, setIntNative, setShortNative, setCharNative, setByteNative, setBooleanNative, setObjectNative): Implement them. * java/io/natObjectInputStream.cc (allocateObject): Add new parameters from Classpath's version. Use _Jv_FromReflectedConstructor(). Call the constructor here. (callConstructor): Removed. (getCallersClassLoader): Removed. * java/lang/reflect/Field.java (setByte, setShort, setInt, setLong, setFloat, setDouble, setChar, setBoolean): Add 'checkFinal' parameter to control whether setting final field values is permitted. Call getAddr() with checkFinal parameter instead of setAddr(). * java/lang/reflect/natField.cc (getType): Lookup and resolve field only if not done already. (getAddr): Add checkFinal parameter. Do the final field check only if checkFinal is set. (setAddr): Removed. 2005-02-21 Mark Wielaard <mark@klomp.org> # Fixes bug #11957 * java/io/ObjectInputStream.java (resolveClass): Don't check "void" twice. 2005-02-21 Mark Wielaard <mark@klomp.org> Fixes bug #11618. * java/io/ObjectInputStream.java (readClassDescriptor): Handle classes without a super class and us ObjectStreamClass.lookupForClassObject(). (resolveClass): Check for primitive types. (lookupClass): Return null when argument is null. 2005-02-21 Jeroen Frijters <jeroen@frijters.net> * java/io/ObjectInputStream.java (readObject): Fix to consume TC_ENDBLOCKDATA after readExternal. 2005-02-21 Jeroen Frijters <jeroen@frijters.net> * java/io/ObjectOutputStream.java (writeObject, callWriteMethod): Replaced reflection with accessing cached info in ObjectStreamClass. (getMethod): Removed. * java/io/ObjectStreamClass.java (findMethod): Added check to make sure the method found has the right modifiers. (cacheMethods): Added writeReplace and writeObject methods. (setFlags): Look at new writeObjectMethod field instead of doing reflection again. (writeReplaceMethod): New field. (writeObjectMethod): New field. 2005-02-21 Guilhem Lavaux <guilhem@kaffe.org> Jeroen Frijters <jeroen@frijters.net> * java/io/ObjectInputStream.java (newObject): Changed prototype. Get a constructor reflect object directly. (callConstructor): Removed. (allocateObject): Changed prototype. (readClassDescriptor): Build the constructor reflection directly. (readObject): Invoke newObject using the new prototype. * java/io/ObjectStreamClass.java (firstNonSerializableParent): Removed. (firstNonSerializableParentConstructor): Added. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@95378 138bc75d-0d04-0410-961f-82ee72b054a4
* 2004-09-25 Michael Koch <konqueror@gmx.de>mkoch2004-09-251-1/+0
| | | | | | | | * java/io/ObjectStreamField.java: Removed unused import statement. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@88091 138bc75d-0d04-0410-961f-82ee72b054a4
* 2004-07-23 Bryce McKinlay <mckinlay@redhat.com>bryce2004-07-231-1/+0
| | | | | | | | | | * java/io/ObjectStreamField (ObjectStreamField): Don't unset 'toset' for final fields. * testsuite/libjava.lang/Serialization.java: New test. * testsuite/libjava.lang/Serialization.out: New. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@85096 138bc75d-0d04-0410-961f-82ee72b054a4
* 2004-06-01 Tom Tromey <tromey@redhat.com>mkoch2004-06-011-6/+20
| | | | | | | | | | | | | | | * java/io/ObjectStreamField.java: Cleaned up imports. 2004-06-01 Michael Koch <konqueror@gmx.de> * java/io/ObjectStreamField.java: Style and javadoc cleanup. 2004-06-01 Mark Wielaard <mark@klomp.org> * java/io/Writer.java (Writer(Object)): Fixed API doc. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@82545 138bc75d-0d04-0410-961f-82ee72b054a4
* 2004-02-28 Guilhem Lavaux <guilhem@kaffe.org>mkoch2004-02-281-43/+88
| | | | | | | | | | | | | | | | * 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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@78627 138bc75d-0d04-0410-961f-82ee72b054a4
* 2004-02-06 Jeroen Frijters <jeroen@frijters.net>mkoch2004-02-061-5/+120
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@77395 138bc75d-0d04-0410-961f-82ee72b054a4
* 2003-12-20 Michael Koch <konqueror@gmx.de>mkoch2003-12-201-0/+6
| | | | | | | * java/io/ObjectStreamField.java (isUnshared): Added documentation. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@74894 138bc75d-0d04-0410-961f-82ee72b054a4
* 2003-12-16 Guilhem Lavaux <guilhem@kaffe.org>mkoch2003-12-161-6/+159
| | | | | | | | | | | * java/io/ObjectStreamField.java: A few methods were added in prevision of the upcoming upgrade of the serialization code. This also adds some missing documentation. (ObjectStreamField): We should throw a NullPointerException when 'name' is null. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@74690 138bc75d-0d04-0410-961f-82ee72b054a4
* 2003-06-20 Michael Koch <konqueror@gmx.de>mkoch2003-06-201-6/+18
| | | | | | | | | | * java/io/ObjectStreamField.java (unshared): new member variable. (ObjectStreamField): New constructor. (isUnshared): New method. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@68261 138bc75d-0d04-0410-961f-82ee72b054a4
* 2003-03-18 Michael Koch <konqueror@gmx.de>mkoch2003-03-181-7/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * java/io/BufferedReader.java, java/io/BufferedWriter.java, java/io/ByteArrayOutputStream.java, java/io/FileFilter.java, java/io/FilePermission.java, java/io/FileReader.java, java/io/FileWriter.java, java/io/FilenameFilter.java, java/io/FilterInputStream.java, java/io/FilterOutputStream.java, java/io/FilterReader.java, java/io/FilterWriter.java, java/io/ObjectInput.java, java/io/ObjectInputValidation.java, java/io/ObjectOutput.java, java/io/ObjectStreamField.java, java/io/PipedInputStream.java, java/io/PipedReader.java, java/io/PrintWriter.java, java/io/PushbackReader.java, java/io/Reader.java, java/io/SerializablePermission.java, java/io/StringReader.java, java/io/Writer.java: Merged from classpath. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@64525 138bc75d-0d04-0410-961f-82ee72b054a4
* * Makefile.am (nat_source_files): Removemark2003-02-281-3/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@63556 138bc75d-0d04-0410-961f-82ee72b054a4
* Add license clarification.mark2002-01-221-5/+16
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@49104 138bc75d-0d04-0410-961f-82ee72b054a4
* Jumbo patch:tromey2000-05-191-0/+99
* Imported beans and serialization * Updated IA-64 port * Miscellaneous bug fixes git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34028 138bc75d-0d04-0410-961f-82ee72b054a4