org.eclipse.birt.core.archive
Class RAFileOutputStream

java.lang.Object
  extended by java.io.OutputStream
      extended by org.eclipse.birt.core.archive.RAOutputStream
          extended by org.eclipse.birt.core.archive.RAFileOutputStream
All Implemented Interfaces:
java.io.Closeable, java.io.Flushable

public class RAFileOutputStream
extends RAOutputStream

This class is to be used by engine host (viewer), but not engine.


Field Summary
protected static java.util.logging.Logger logger
          the logger
 
Constructor Summary
RAFileOutputStream(java.io.RandomAccessFile parentFile, long startPos)
           
 
Method Summary
 long getOffset()
           
 long getStreamLength()
           
 long length()
           
 void seek(long localPos)
          Same behavior as the seek in RandomAccessFile.
 void write(byte[] b)
          Writes b.length bytes from the specified byte array to this output stream.
 void write(byte[] b, int off, int len)
          Writes len bytes from the specified byte array starting at offset off to this output stream.
 void write(int b)
          The same behavior as OutputStream.write().
 void writeInt(int v)
           
 void writeLong(long v)
           
 
Methods inherited from class java.io.OutputStream
close, flush
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

logger

protected static java.util.logging.Logger logger
the logger

Constructor Detail

RAFileOutputStream

public RAFileOutputStream(java.io.RandomAccessFile parentFile,
                          long startPos)
Parameters:
parentFile - - underlying RandomAccess file
startPos - - the (global) position of the first character in parentFile
endPos - - the (global) position of EOF mark (not a valid character in the file)
Method Detail

write

public void write(int b)
           throws java.io.IOException
The same behavior as OutputStream.write().
Writes the specified byte to this output stream. The general contract for write is that one byte is written to the output stream. The byte to be written is the eight low-order bits of the argument b. The 24 high-order bits of b are ignored.

Subclasses of OutputStream must provide an implementation for this method.

Specified by:
write in class java.io.OutputStream
Parameters:
b - the byte.
Throws:
java.io.IOException - if an I/O error occurs. In particular, an IOException may be thrown if the output stream has been closed.

write

public void write(byte[] b)
           throws java.io.IOException
Writes b.length bytes from the specified byte array to this output stream. The general contract for write(b) is that it should have exactly the same effect as the call write(b, 0, b.length).

Overrides:
write in class java.io.OutputStream
Parameters:
b - the data.
Throws:
java.io.IOException - if an I/O error occurs.
See Also:
OutputStream.write(byte[], int, int)

write

public void write(byte[] b,
                  int off,
                  int len)
           throws java.io.IOException
Writes len bytes from the specified byte array starting at offset off to this output stream. The general contract for write(b, off, len) is that some of the bytes in the array b are written to the output stream in order; element b[off] is the first byte written and b[off+len-1] is the last byte written by this operation.

Overrides:
write in class java.io.OutputStream
Parameters:
b - the data.
off - the start offset in the data.
len - the number of bytes to write.
Throws:
java.io.IOException - if an I/O error occurs.

writeInt

public void writeInt(int v)
              throws java.io.IOException
Specified by:
writeInt in class RAOutputStream
Throws:
java.io.IOException

writeLong

public void writeLong(long v)
               throws java.io.IOException
Specified by:
writeLong in class RAOutputStream
Throws:
java.io.IOException

seek

public void seek(long localPos)
          throws java.io.IOException
Same behavior as the seek in RandomAccessFile.
Sets the file-pointer offset, measured from the beginning of this file, at which the next read or write occurs. The offset may be set beyond the end of the file. Setting the offset beyond the end of the file does not change the file length. The file length will change only by writing after the offset has been set beyond the end of the file.

Specified by:
seek in class RAOutputStream
Parameters:
localPos - - the new local postion in the stream, measured in bytes from the beginning of the stream
Throws:
java.io.IOException

getOffset

public long getOffset()
               throws java.io.IOException
Specified by:
getOffset in class RAOutputStream
Throws:
java.io.IOException

getStreamLength

public long getStreamLength()
Returns:
the length of the stream

length

public long length()
            throws java.io.IOException
Specified by:
length in class RAOutputStream
Throws:
java.io.IOException


Copyright © 2008 Actuate Corp. All rights reserved.