org.aspectj.weaver
Class CompressingDataOutputStream
java.lang.Object
java.io.OutputStream
java.io.FilterOutputStream
java.io.DataOutputStream
org.aspectj.weaver.CompressingDataOutputStream
- All Implemented Interfaces:
- java.io.Closeable, java.io.DataOutput, java.io.Flushable
public class CompressingDataOutputStream
- extends java.io.DataOutputStream
A variation of a DataOutputStream that is linked to a constant pool writer. The linked constant pool can be used to compress
objects into to simple index references into the constant pool. The corresponding decompression is done in the
VersionedDataInputStream.
- Author:
- Andy Clement
Methods inherited from class java.io.DataOutputStream |
flush, size, write, write, writeBoolean, writeByte, writeBytes, writeChar, writeChars, writeDouble, writeFloat, writeInt, writeLong, writeShort, writeUTF |
Methods inherited from class java.io.FilterOutputStream |
close, write |
Methods inherited from class java.lang.Object |
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Methods inherited from interface java.io.DataOutput |
write |
compressionEnabled
public boolean compressionEnabled
CompressingDataOutputStream
public CompressingDataOutputStream(java.io.ByteArrayOutputStream baos,
ConstantPoolWriter constantPoolWriter)
CompressingDataOutputStream
public CompressingDataOutputStream(java.io.FileOutputStream fos)
canCompress
public boolean canCompress()
compressSignature
public int compressSignature(java.lang.String signature)
- Parameters:
signature
- of the form 'La/b/c/d;'
- Returns:
- the constant pool index
compressFilepath
public int compressFilepath(java.lang.String filepath)
- Parameters:
filepath
- a file system path 'c:\a\b\c.txt' or '/a/b/c.txt'
- Returns:
- the constant pool index
compressName
public int compressName(java.lang.String name)
- Parameters:
name
- a simple name (for example a method or field name)
- Returns:
- the constant pool index
writeCompressedName
public void writeCompressedName(java.lang.String name)
throws java.io.IOException
- Parameters:
name
- a simple name (for example a method or field name)
- Throws:
java.io.IOException
writeCompressedSignature
public void writeCompressedSignature(java.lang.String signature)
throws java.io.IOException
- Parameters:
signature
- of the form 'La/b/c/d;'
- Throws:
java.io.IOException
writeCompressedPath
public void writeCompressedPath(java.lang.String path)
throws java.io.IOException
- Parameters:
path
- a file system path 'c:\a\b\c.txt' or '/a/b/c.txt'
- Throws:
java.io.IOException