Class RAFolderOutputStream

  • All Implemented Interfaces:
    java.io.Closeable, java.io.Flushable, java.lang.AutoCloseable

    public class RAFolderOutputStream
    extends RAOutputStream
    RAOutputStream implementation for folder based report archive
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void close()
      Close the stream.
      void flush()
      Flush the stream.
      java.lang.String getName()  
      long getOffset()  
      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)
      Same behavior as DataOutputStream.writeInt();
      void writeLong​(long v)
      Same behavior as DataOutputStream.writeLong();
      • Methods inherited from class java.io.OutputStream

        nullOutputStream
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • RAFolderOutputStream

        public RAFolderOutputStream​(java.util.Collection<RAFolderOutputStream> manager,
                                    java.io.File file)
                             throws java.io.FileNotFoundException,
                                    java.io.IOException
        Throws:
        java.io.FileNotFoundException
        java.io.IOException
      • RAFolderOutputStream

        public RAFolderOutputStream​(java.util.Collection<RAFolderOutputStream> manager,
                                    java.io.File file,
                                    boolean append)
                             throws java.io.FileNotFoundException,
                                    java.io.IOException
        Throws:
        java.io.FileNotFoundException
        java.io.IOException
    • Method Detail

      • getName

        public java.lang.String getName()
      • 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
        Same behavior as DataOutputStream.writeInt();
        Specified by:
        writeInt in class RAOutputStream
        Throws:
        java.io.IOException
      • writeLong

        public void writeLong​(long v)
                       throws java.io.IOException
        Same behavior as DataOutputStream.writeLong();
        Specified by:
        writeLong in class RAOutputStream
        Throws:
        java.io.IOException
      • getOffset

        public long getOffset()
                       throws java.io.IOException
        Specified by:
        getOffset 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
      • flush

        public void flush()
                   throws java.io.IOException
        Flush the stream.
        Specified by:
        flush in interface java.io.Flushable
        Overrides:
        flush in class java.io.OutputStream
        Throws:
        java.io.IOException
      • close

        public void close()
                   throws java.io.IOException
        Close the stream. If the stream is the only one in the underlying file, the file will be close too.
        Specified by:
        close in interface java.lang.AutoCloseable
        Specified by:
        close in interface java.io.Closeable
        Overrides:
        close in class java.io.OutputStream
        Throws:
        java.io.IOException
      • length

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