org.apache.cxf.io
Class CachedWriter
java.lang.Object
java.io.Writer
org.apache.cxf.io.CachedWriter
- All Implemented Interfaces:
- Closeable, Flushable, Appendable
public class CachedWriter
- extends Writer
outputLocked
protected boolean outputLocked
currentStream
protected Writer currentStream
CachedWriter
public CachedWriter()
CachedWriter
public CachedWriter(long threshold)
holdTempFile
public void holdTempFile()
releaseTempFileHold
public void releaseTempFileHold()
registerCallback
public void registerCallback(CachedWriterCallback cb)
deregisterCallback
public void deregisterCallback(CachedWriterCallback cb)
getCallbacks
public List<CachedWriterCallback> getCallbacks()
doFlush
protected void doFlush()
throws IOException
- Perform any actions required on stream flush (freeze headers, reset
output stream ... etc.)
- Throws:
IOException
flush
public void flush()
throws IOException
- Specified by:
flush
in interface Flushable
- Specified by:
flush
in class Writer
- Throws:
IOException
doClose
protected void doClose()
throws IOException
- Perform any actions required on stream closure (handle response etc.)
- Throws:
IOException
postClose
protected void postClose()
throws IOException
- Perform any actions required after stream closure (close the other related stream etc.)
- Throws:
IOException
lockOutputStream
public void lockOutputStream()
throws IOException
- Locks the output stream to prevent additional writes, but maintains
a pointer to it so an InputStream can be obtained
- Throws:
IOException
close
public void close()
throws IOException
- Specified by:
close
in interface Closeable
- Specified by:
close
in class Writer
- Throws:
IOException
equals
public boolean equals(Object obj)
- Overrides:
equals
in class Object
resetOut
public void resetOut(Writer out,
boolean copyOldContent)
throws IOException
- Replace the original stream with the new one, optionally copying the content of the old one
into the new one.
When with Attachment, needs to replace the xml writer stream with the stream used by
AttachmentSerializer or copy the cached output stream to the "real"
output stream, i.e. onto the wire.
- Parameters:
out
- the new output streamcopyOldContent
- flag indicating if the old content should be copied
- Throws:
IOException
size
public long size()
getChars
public char[] getChars()
throws IOException
- Throws:
IOException
writeCacheTo
public void writeCacheTo(Writer out)
throws IOException
- Throws:
IOException
writeCacheTo
public void writeCacheTo(StringBuilder out,
long limit)
throws IOException
- Throws:
IOException
writeCacheTo
public void writeCacheTo(StringBuilder out)
throws IOException
- Throws:
IOException
getOut
public Writer getOut()
- Returns:
- the underlying output stream
hashCode
public int hashCode()
- Overrides:
hashCode
in class Object
toString
public String toString()
- Overrides:
toString
in class Object
onWrite
protected void onWrite()
throws IOException
- Throws:
IOException
write
public void write(char[] cbuf,
int off,
int len)
throws IOException
- Specified by:
write
in class Writer
- Throws:
IOException
getTempFile
public File getTempFile()
getReader
public Reader getReader()
throws IOException
- Throws:
IOException
setOutputDir
public void setOutputDir(File outputDir)
throws IOException
- Throws:
IOException
setThreshold
public void setThreshold(long threshold)
setMaxSize
public void setMaxSize(long maxSize)
setDefaultMaxSize
public static void setDefaultMaxSize(long l)
setDefaultThreshold
public static void setDefaultThreshold(int i)
Apache CXF