summaryrefslogtreecommitdiff
path: root/libjava/java/io/ObjectOutputStream.h
blob: fe6f88f11a8b8d9d2ef2167287debd882dbb51e6 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-

#ifndef __java_io_ObjectOutputStream__
#define __java_io_ObjectOutputStream__

#pragma interface

#include <java/io/OutputStream.h>
#include <gcj/array.h>

extern "Java"
{
  namespace gnu
  {
    namespace java
    {
      namespace io
      {
          class ObjectIdentityMap2Int;
      }
      namespace security
      {
        namespace action
        {
            class SetAccessibleAction;
        }
      }
    }
  }
}

class java::io::ObjectOutputStream : public ::java::io::OutputStream
{

public:
  ObjectOutputStream(::java::io::OutputStream *);
  virtual void writeObject(::java::lang::Object *);
  virtual void writeUnshared(::java::lang::Object *);
private:
  void writeObject(::java::lang::Object *, jboolean);
public: // actually protected
  virtual void writeClassDescriptor(::java::io::ObjectStreamClass *);
public:
  virtual void defaultWriteObject();
private:
  void markFieldsWritten();
public:
  virtual void reset();
private:
  void reset(jboolean);
public:
  virtual void useProtocolVersion(jint);
public: // actually protected
  virtual void annotateClass(::java::lang::Class *);
  virtual void annotateProxyClass(::java::lang::Class *);
  virtual ::java::lang::Object * replaceObject(::java::lang::Object *);
  virtual jboolean enableReplaceObject(jboolean);
  virtual void writeStreamHeader();
  ObjectOutputStream();
  virtual void writeObjectOverride(::java::lang::Object *);
public:
  virtual void write(jint);
  virtual void write(JArray< jbyte > *);
  virtual void write(JArray< jbyte > *, jint, jint);
  virtual void flush();
public: // actually protected
  virtual void drain();
public:
  virtual void close();
  virtual void writeBoolean(jboolean);
  virtual void writeByte(jint);
  virtual void writeShort(jint);
  virtual void writeChar(jint);
  virtual void writeInt(jint);
  virtual void writeLong(jlong);
  virtual void writeFloat(jfloat);
  virtual void writeDouble(jdouble);
  virtual void writeBytes(::java::lang::String *);
  virtual void writeChars(::java::lang::String *);
  virtual void writeUTF(::java::lang::String *);
  virtual ::java::io::ObjectOutputStream$PutField * putFields();
  virtual void writeFields();
private:
  void writeBlockDataHeader(jint);
  jint findHandle(::java::lang::Object *);
  jint assignNewHandle(::java::lang::Object *);
  void clearHandles();
  void writeArraySizeAndElements(::java::lang::Object *, ::java::lang::Class *);
  void writeFields(::java::lang::Object *, ::java::io::ObjectStreamClass *);
  void writeFields(::java::lang::Object *, JArray< ::java::io::ObjectStreamField * > *);
public: // actually package-private
  virtual jboolean setBlockDataMode(jboolean);
private:
  void callWriteMethod(::java::lang::Object *, ::java::io::ObjectStreamClass *);
  void dumpElementln(::java::lang::String *, ::java::lang::Object *);
  void dumpElementln(::java::lang::String *);
  static const jint BUFFER_SIZE = 1024;
  static jint defaultProtocolVersion;
  ::java::io::DataOutputStream * __attribute__((aligned(__alignof__( ::java::io::OutputStream)))) dataOutput;
  jboolean writeDataAsBlocks;
  ::java::io::DataOutputStream * realOutput;
  ::java::io::DataOutputStream * blockDataOutput;
  JArray< jbyte > * blockData;
  jint blockDataCount;
  ::java::lang::Object * currentObject;
public: // actually package-private
  ::java::io::ObjectStreamClass * currentObjectStreamClass;
private:
  ::java::io::ObjectOutputStream$PutField * currentPutField;
  jboolean fieldsAlreadyWritten;
  jboolean replacementEnabled;
  jboolean isSerializing;
  jint nextOID;
  ::gnu::java::io::ObjectIdentityMap2Int * OIDLookupTable;
  jint protocolVersion;
  jboolean useSubclassMethod;
  ::gnu::java::security::action::SetAccessibleAction * setAccessible;
  jint depth;
  jboolean dump;
  static const jboolean DEBUG = 0;
public:
  static ::java::lang::Class class$;
};

#endif // __java_io_ObjectOutputStream__