2 // DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
4 #ifndef __java_io_ObjectOutputStream__
5 #define __java_io_ObjectOutputStream__
9 #include <java/io/OutputStream.h>
10 #include <gcj/array.h>
20 class ObjectIdentityMap2Int
;
26 class SetAccessibleAction
;
33 class java::io::ObjectOutputStream
: public ::java::io::OutputStream
37 ObjectOutputStream(::java::io::OutputStream
*);
38 virtual void writeObject(::java::lang::Object
*);
39 public: // actually protected
40 virtual void writeClassDescriptor(::java::io::ObjectStreamClass
*);
42 virtual void defaultWriteObject();
44 void markFieldsWritten();
50 virtual void useProtocolVersion(jint
);
51 public: // actually protected
52 virtual void annotateClass(::java::lang::Class
*);
53 virtual void annotateProxyClass(::java::lang::Class
*);
54 virtual ::java::lang::Object
* replaceObject(::java::lang::Object
*);
55 virtual jboolean
enableReplaceObject(jboolean
);
56 virtual void writeStreamHeader();
58 virtual void writeObjectOverride(::java::lang::Object
*);
60 virtual void write(jint
);
61 virtual void write(JArray
< jbyte
> *);
62 virtual void write(JArray
< jbyte
> *, jint
, jint
);
64 public: // actually protected
68 virtual void writeBoolean(jboolean
);
69 virtual void writeByte(jint
);
70 virtual void writeShort(jint
);
71 virtual void writeChar(jint
);
72 virtual void writeInt(jint
);
73 virtual void writeLong(jlong
);
74 virtual void writeFloat(jfloat
);
75 virtual void writeDouble(jdouble
);
76 virtual void writeBytes(::java::lang::String
*);
77 virtual void writeChars(::java::lang::String
*);
78 virtual void writeUTF(::java::lang::String
*);
79 virtual ::java::io::ObjectOutputStream$PutField
* putFields();
80 virtual void writeFields();
82 void writeBlockDataHeader(jint
);
83 jint
findHandle(::java::lang::Object
*);
84 jint
assignNewHandle(::java::lang::Object
*);
86 void writeArraySizeAndElements(::java::lang::Object
*, ::java::lang::Class
*);
87 void writeFields(::java::lang::Object
*, ::java::io::ObjectStreamClass
*);
88 void writeFields(::java::lang::Object
*, JArray
< ::java::io::ObjectStreamField
* > *);
89 public: // actually package-private
90 virtual jboolean
setBlockDataMode(jboolean
);
92 void callWriteMethod(::java::lang::Object
*, ::java::io::ObjectStreamClass
*);
93 void dumpElementln(::java::lang::String
*);
94 static const jint BUFFER_SIZE
= 1024;
95 static jint defaultProtocolVersion
;
96 ::java::io::DataOutputStream
* __attribute__((aligned(__alignof__( ::java::io::OutputStream
)))) dataOutput
;
97 jboolean writeDataAsBlocks
;
98 ::java::io::DataOutputStream
* realOutput
;
99 ::java::io::DataOutputStream
* blockDataOutput
;
100 JArray
< jbyte
> * blockData
;
102 ::java::lang::Object
* currentObject
;
103 public: // actually package-private
104 ::java::io::ObjectStreamClass
* currentObjectStreamClass
;
106 ::java::io::ObjectOutputStream$PutField
* currentPutField
;
107 jboolean fieldsAlreadyWritten
;
108 jboolean replacementEnabled
;
109 jboolean isSerializing
;
111 ::gnu::java::io::ObjectIdentityMap2Int
* OIDLookupTable
;
112 jint protocolVersion
;
113 jboolean useSubclassMethod
;
114 ::gnu::java::security::action::SetAccessibleAction
* setAccessible
;
117 static const jboolean DEBUG
= 0;
119 static ::java::lang::Class
class$
;
122 #endif // __java_io_ObjectOutputStream__