Package com.sun.corba.ee.impl.io
Class IIOPOutputStream
java.lang.Object
java.io.OutputStream
java.io.ObjectOutputStream
com.sun.corba.ee.impl.io.OutputStreamHook
com.sun.corba.ee.impl.io.IIOPOutputStream
- All Implemented Interfaces:
Closeable,DataOutput,Flushable,ObjectOutput,ObjectStreamConstants,AutoCloseable
IIOPOutputStream is ...
- Since:
- JDK1.1.6
- Version:
- 0.01, 4/6/98
-
Nested Class Summary
Nested classes/interfaces inherited from class com.sun.corba.ee.impl.io.OutputStreamHook
OutputStreamHook.DefaultState, OutputStreamHook.InWriteObjectState, OutputStreamHook.WriteObjectState, OutputStreamHook.WroteCustomDataState, OutputStreamHook.WroteDefaultDataStateNested classes/interfaces inherited from class java.io.ObjectOutputStream
ObjectOutputStream.PutField -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate IOExceptionprivate static org.glassfish.pfl.basic.reflection.Bridgeprivate Stack<ObjectStreamClass> private ObjectStreamClassprivate Objectprivate OutputStreamprivate intprivate intFields inherited from class com.sun.corba.ee.impl.io.OutputStreamHook
IN_WRITE_OBJECT, NOT_IN_WRITE_OBJECT, streamFormatVersion, writeObjectState, WROTE_CUSTOM_DATA, WROTE_DEFAULT_DATAFields inherited from interface java.io.ObjectStreamConstants
baseWireHandle, PROTOCOL_VERSION_1, PROTOCOL_VERSION_2, SC_BLOCK_DATA, SC_ENUM, SC_EXTERNALIZABLE, SC_SERIALIZABLE, SC_WRITE_METHOD, STREAM_MAGIC, STREAM_VERSION, SUBCLASS_IMPLEMENTATION_PERMISSION, SUBSTITUTION_PERMISSION, TC_ARRAY, TC_BASE, TC_BLOCKDATA, TC_BLOCKDATALONG, TC_CLASS, TC_CLASSDESC, TC_ENDBLOCKDATA, TC_ENUM, TC_EXCEPTION, TC_LONGSTRING, TC_MAX, TC_NULL, TC_OBJECT, TC_PROXYCLASSDESC, TC_REFERENCE, TC_RESET, TC_STRING -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected final voidannotateClass(Class<?> cl) protected voidprivate booleanprivate booleanfinal voidclose()(package private) final intfinal voidOverride the actions of the final method "defaultWriteObject()" in ObjectOutputStream.protected final voiddrain()final booleanenableReplaceObjectDelegate(boolean enable) Override the actions of the final method "enableReplaceObject()" in ObjectOutputStream.final voidflush()(package private) ObjectStreamField[](package private) final OutputStream(package private) final voidprotected voidinternalWriteUTF(OutputStream stream, String data) Helper method for correcting the Kestrel bug 4367783 (dealing with larger than 8-bit chars).private voidinvokeObjectWriter(ObjectStreamClass osc, Object obj) private voidoutputClassFields(Object o, Class cl, ObjectStreamField[] fields) private voidoutputObject(Object obj) private voidrecursionDepthInfo(int rd) protected final ObjectreplaceObject(Object obj) final voidreset()Reset will disregard the state of any objects already written to the stream.(package private) final voidfinal voidsimpleWriteObject(Object obj, byte formatVersion) Override the actions of the final method "writeObject()" in ObjectOutputStream.final voidwrite(byte[] b) final voidwrite(byte[] b, int off, int len) final voidwrite(int data) final voidwriteBoolean(boolean data) final voidwriteByte(int data) final voidwriteBytes(String data) final voidwriteChar(int data) final voidwriteChars(String data) final voidwriteDouble(double data) (package private) voidwriteField(ObjectStreamField field, Object value) final voidwriteFloat(float data) private voidfinal voidwriteInt(int data) final voidwriteLong(long data) private voidwriteObjectField(ObjectStreamField field, Object objectValue) final voidOverride the actions of the final method "writeObject()" in ObjectOutputStream.final voidwriteShort(int data) protected final voidfinal voidMethods inherited from class com.sun.corba.ee.impl.io.OutputStreamHook
defaultWriteObject, getStreamFormatVersion, putFields, setState, writeFieldsMethods inherited from class java.io.ObjectOutputStream
annotateProxyClass, enableReplaceObject, useProtocolVersion, writeClassDescriptor, writeObject, writeUnshared
-
Field Details
-
bridge
private static org.glassfish.pfl.basic.reflection.Bridge bridge -
orbStream
-
currentObject
-
currentClassDesc
-
recursionDepth
private int recursionDepth -
simpleWriteDepth
private int simpleWriteDepth -
abortIOException
-
classDescStack
-
-
Constructor Details
-
IIOPOutputStream
- Throws:
IOException
-
-
Method Details
-
beginOptionalCustomData
protected void beginOptionalCustomData()- Specified by:
beginOptionalCustomDatain classOutputStreamHook
-
setOrbStream
-
getOrbStream
- Specified by:
getOrbStreamin classOutputStreamHook
-
recursionDepthInfo
@InfoMethod private void recursionDepthInfo(int rd) -
increaseRecursionDepth
final void increaseRecursionDepth() -
decreaseRecursionDepth
final int decreaseRecursionDepth() -
writeFormatVersion
private void writeFormatVersion() -
writeObjectOverride
Override the actions of the final method "writeObject()" in ObjectOutputStream.- Overrides:
writeObjectOverridein classObjectOutputStream- Throws:
IOException- Since:
- JDK1.1.6
-
simpleWriteObject
Override the actions of the final method "writeObject()" in ObjectOutputStream.- Parameters:
obj- Object to writeformatVersion- Format version- Since:
- JDK1.1.6
-
getFieldsNoCopy
ObjectStreamField[] getFieldsNoCopy()- Specified by:
getFieldsNoCopyin classOutputStreamHook
-
defaultWriteObjectDelegate
public final void defaultWriteObjectDelegate()Override the actions of the final method "defaultWriteObject()" in ObjectOutputStream.- Specified by:
defaultWriteObjectDelegatein classOutputStreamHook- Since:
- JDK1.1.6
-
enableReplaceObjectDelegate
public final boolean enableReplaceObjectDelegate(boolean enable) Override the actions of the final method "enableReplaceObject()" in ObjectOutputStream.- Parameters:
enable- ignored- Returns:
false- Since:
- JDK1.1.6
-
annotateClass
- Overrides:
annotateClassin classObjectOutputStream- Throws:
IOException
-
close
- Specified by:
closein interfaceAutoCloseable- Specified by:
closein interfaceCloseable- Specified by:
closein interfaceObjectOutput- Overrides:
closein classObjectOutputStream- Throws:
IOException
-
drain
- Overrides:
drainin classObjectOutputStream- Throws:
IOException
-
flush
- Specified by:
flushin interfaceFlushable- Specified by:
flushin interfaceObjectOutput- Overrides:
flushin classObjectOutputStream- Throws:
IOException
-
replaceObject
- Overrides:
replaceObjectin classObjectOutputStream- Throws:
IOException
-
reset
Reset will disregard the state of any objects already written to the stream. The state is reset to be the same as a new ObjectOutputStream. The current point in the stream is marked as reset so the corresponding ObjectInputStream will be reset at the same point. Objects previously written to the stream will not be refered to as already being in the stream. They will be written to the stream again.- Overrides:
resetin classObjectOutputStream- Throws:
IOException- Since:
- JDK1.1
-
write
- Specified by:
writein interfaceDataOutput- Specified by:
writein interfaceObjectOutput- Overrides:
writein classObjectOutputStream- Throws:
IOException
-
write
- Specified by:
writein interfaceDataOutput- Specified by:
writein interfaceObjectOutput- Overrides:
writein classObjectOutputStream- Throws:
IOException
-
write
- Specified by:
writein interfaceDataOutput- Specified by:
writein interfaceObjectOutput- Overrides:
writein classObjectOutputStream- Throws:
IOException
-
writeBoolean
- Specified by:
writeBooleanin interfaceDataOutput- Overrides:
writeBooleanin classObjectOutputStream- Throws:
IOException
-
writeByte
- Specified by:
writeBytein interfaceDataOutput- Overrides:
writeBytein classObjectOutputStream- Throws:
IOException
-
writeBytes
- Specified by:
writeBytesin interfaceDataOutput- Overrides:
writeBytesin classObjectOutputStream- Throws:
IOException
-
writeChar
- Specified by:
writeCharin interfaceDataOutput- Overrides:
writeCharin classObjectOutputStream- Throws:
IOException
-
writeChars
- Specified by:
writeCharsin interfaceDataOutput- Overrides:
writeCharsin classObjectOutputStream- Throws:
IOException
-
writeDouble
- Specified by:
writeDoublein interfaceDataOutput- Overrides:
writeDoublein classObjectOutputStream- Throws:
IOException
-
writeFloat
- Specified by:
writeFloatin interfaceDataOutput- Overrides:
writeFloatin classObjectOutputStream- Throws:
IOException
-
writeInt
- Specified by:
writeIntin interfaceDataOutput- Overrides:
writeIntin classObjectOutputStream- Throws:
IOException
-
writeLong
- Specified by:
writeLongin interfaceDataOutput- Overrides:
writeLongin classObjectOutputStream- Throws:
IOException
-
writeShort
- Specified by:
writeShortin interfaceDataOutput- Overrides:
writeShortin classObjectOutputStream- Throws:
IOException
-
writeStreamHeader
- Overrides:
writeStreamHeaderin classObjectOutputStream- Throws:
IOException
-
internalWriteUTF
Helper method for correcting the Kestrel bug 4367783 (dealing with larger than 8-bit chars). The old behavior was preserved in orbutil.IIOPInputStream_1_3 in order to interoperate with our legacy ORBs.- Parameters:
stream- Stream to write todata- Data to write
-
writeUTF
- Specified by:
writeUTFin interfaceDataOutput- Overrides:
writeUTFin classObjectOutputStream- Throws:
IOException
-
checkSpecialClasses
- Throws:
IOException
-
checkSubstitutableSpecialClasses
- Throws:
IOException
-
outputObject
- Throws:
IOException
-
invokeObjectWriter
- Throws:
IOException
-
writeField
- Specified by:
writeFieldin classOutputStreamHook- Throws:
IOException
-
writeObjectField
- Throws:
IOException
-
outputClassFields
private void outputClassFields(Object o, Class cl, ObjectStreamField[] fields) throws IOException, InvalidClassException - Throws:
IOExceptionInvalidClassException
-