org.zkoss.zk.au.http
Class HttpAuWriter

java.lang.Object
  extended by org.zkoss.zk.au.http.HttpAuWriter
All Implemented Interfaces:
AuWriter

public class HttpAuWriter
extends java.lang.Object
implements AuWriter

The writer used to write the output back to the client.

Since:
3.0.1
Author:
tomyeh

Constructor Summary
HttpAuWriter()
           
 
Method Summary
 void close(java.lang.Object request, java.lang.Object response)
          Closes the writer and flush the result to client.
 java.lang.Object complete()
          Indicates the writing has been completed.
protected  void flush(java.lang.Object request, java.lang.Object response, boolean bCompress)
          Flush the result of responses to client.
 boolean isCompress()
          Returns whether to compress the output.
 AuWriter open(java.lang.Object request, java.lang.Object response)
          Opens the connection.
 void resend(java.lang.Object prevContent)
          Resend the content of the previous request returned by AuWriter.complete().
protected  byte[] restore(java.lang.Object data)
          Called to decode the last response for repeated request before retrieving.
protected  java.lang.Object save(byte[] data)
          Called to encode the last response for repeated request before storing.
 void setCompress(boolean compress)
          Sets whether to compress the output with GZIP.
 void write(AuResponse response)
          Generates the specified the response to the output.
 void write(java.util.Collection<AuResponse> responses)
          Generates a list of responses to the output.
 void writeResponseId(int resId)
          Generates the response ID to the output.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

HttpAuWriter

public HttpAuWriter()
Method Detail

isCompress

public boolean isCompress()
Returns whether to compress the output.

Since:
3.6.3

setCompress

public void setCompress(boolean compress)
Description copied from interface: AuWriter
Sets whether to compress the output with GZIP.

Default: true.

Specified by:
setCompress in interface AuWriter

open

public AuWriter open(java.lang.Object request,
                     java.lang.Object response)
              throws java.io.IOException
Opens the connection.

Default: it creates an object to store the responses.

Specified by:
open in interface AuWriter
Parameters:
request - the request (HttpServletRequest if HTTP)
response - the response (HttpServletResponse if HTTP)
Returns:
this object
Throws:
java.io.IOException

close

public void close(java.lang.Object request,
                  java.lang.Object response)
           throws java.io.IOException
Description copied from interface: AuWriter
Closes the writer and flush the result to client.

Specified by:
close in interface AuWriter
Parameters:
request - the request (HttpServletRequest if HTTP)
response - the response (HttpServletResponse if HTTP)
Throws:
java.io.IOException

resend

public void resend(java.lang.Object prevContent)
            throws java.io.IOException
Description copied from interface: AuWriter
Resend the content of the previous request returned by AuWriter.complete().

The content is usually stored to a desktop by DesktopCtrl.responseSent(java.lang.String, java.lang.Object), and retrieved by DesktopCtrl.getLastResponse(java.lang.String).

Once this method is called, the caller shall not invoke ay other write method nor AuWriter.complete(). It shall invoke only AuWriter.close(java.lang.Object, java.lang.Object) to end the writer.

Specified by:
resend in interface AuWriter
Parameters:
prevContent - the previous content returned by AuWriter.close(java.lang.Object, java.lang.Object) of the previous AuWriter.
Throws:
java.io.IOException

complete

public java.lang.Object complete()
                          throws java.io.IOException
Description copied from interface: AuWriter
Indicates the writing has been completed. Invokes this method before AuWriter.close(java.lang.Object, java.lang.Object), if the caller supports the resend mechanism. The caller usually stores the return value to a desktop by DesktopCtrl.responseSent(java.lang.String, java.lang.Object)).

Unlike AuWriter.close(java.lang.Object, java.lang.Object), this method must be called in an activated execution.

Once this method is called, the caller shall not invoke ay other write method. It shall invoke only AuWriter.close(java.lang.Object, java.lang.Object) to end the writer.

Specified by:
complete in interface AuWriter
Throws:
java.io.IOException

flush

protected void flush(java.lang.Object request,
                     java.lang.Object response,
                     boolean bCompress)
              throws java.io.IOException
Flush the result of responses to client.

Parameters:
bCompress - whether to compress (if allowed).
Throws:
java.io.IOException
Since:
5.0.4

save

protected java.lang.Object save(byte[] data)
Called to encode the last response for repeated request before storing.

Default: does nothing but return the input argument, data. The derived class might override this method to compress it.

Since:
5.0.4
See Also:
restore(java.lang.Object)

restore

protected byte[] restore(java.lang.Object data)
Called to decode the last response for repeated request before retrieving.

Default: does nothing but return the input argument, data. The derived class might override this method to uncompress it.

Parameters:
data - the data returned by save(byte[])
Returns:
the byte array that is passed to save(byte[]).
Since:
5.0.4

writeResponseId

public void writeResponseId(int resId)
                     throws java.io.IOException
Description copied from interface: AuWriter
Generates the response ID to the output.

Specified by:
writeResponseId in interface AuWriter
Throws:
java.io.IOException
See Also:
DesktopCtrl.getResponseId(boolean)

write

public void write(AuResponse response)
           throws java.io.IOException
Description copied from interface: AuWriter
Generates the specified the response to the output.

Specified by:
write in interface AuWriter
Throws:
java.io.IOException

write

public void write(java.util.Collection<AuResponse> responses)
           throws java.io.IOException
Description copied from interface: AuWriter
Generates a list of responses to the output.

Specified by:
write in interface AuWriter
Throws:
java.io.IOException


Copyright © 2005-2011 Potix Corporation. All Rights Reserved. SourceForge.net Logo