com.atlassian.jira.util
Class LimitedOutputStream

java.lang.Object
  extended by java.io.OutputStream
      extended by com.atlassian.jira.util.LimitedOutputStream
All Implemented Interfaces:
Closeable, Flushable

public class LimitedOutputStream
extends OutputStream

An OutputStream that throws an LimitedOutputStream.TooBigIOException if more than the configured number of bytes are ever written to the output stream.

Since:
v4.4

Nested Class Summary
static class LimitedOutputStream.TooBigIOException
           
 
Constructor Summary
LimitedOutputStream(OutputStream delegate, long maxLength)
           
 
Method Summary
 void close()
           
 void flush()
           
 long getCurrentLength()
           
 long getMaxLength()
           
 void write(byte[] b, int off, int len)
           
 void write(int b)
           
 
Methods inherited from class java.io.OutputStream
write
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

LimitedOutputStream

public LimitedOutputStream(OutputStream delegate,
                           long maxLength)
Method Detail

write

public void write(byte[] b,
                  int off,
                  int len)
           throws IOException
Overrides:
write in class OutputStream
Throws:
IOException

write

public void write(int b)
           throws IOException
Specified by:
write in class OutputStream
Throws:
IOException

getMaxLength

public long getMaxLength()

getCurrentLength

public long getCurrentLength()

flush

public void flush()
           throws IOException
Specified by:
flush in interface Flushable
Overrides:
flush in class OutputStream
Throws:
IOException

close

public void close()
           throws IOException
Specified by:
close in interface Closeable
Overrides:
close in class OutputStream
Throws:
IOException


Copyright © 2002-2012 Atlassian. All Rights Reserved.