|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Objectrabbit.handler.BaseHandler
rabbit.handler.ImageHandler
public class ImageHandler
This class filters images to low quality jpegs.
| Field Summary |
|---|
| Fields inherited from class rabbit.handler.BaseHandler |
|---|
cacheStream, clientstream, con, contentstream, entry, maycache, mayfilter, request, response, size |
| Fields inherited from interface rabbit.util.Logger |
|---|
ALL, DEBUG, ERROR, FATAL, INFO, MSG, WARN |
| Constructor Summary | |
|---|---|
ImageHandler()
|
|
ImageHandler(Connection con,
HTTPHeader request,
HTTPHeader response,
HTTPInputStream contentstream,
MultiOutputStream clientstream,
boolean maycache,
boolean mayfilter,
long size)
Create a new ImageHansler for the given request. |
|
| Method Summary | |
|---|---|
void |
addCacheStream()
Set up the cache stream if available. |
protected void |
convertImage()
Convert the image into a low quality jpeg. |
protected void |
finish()
clear up the mess we made (remove intermediate files etc). |
Handler |
getNewInstance(Connection connection,
HTTPHeader header,
HTTPHeader webheader,
HTTPInputStream contentStream,
MultiOutputStream out,
boolean maycache,
boolean mayfilter,
long size)
Get a new Handler for the given request made. |
protected boolean |
mayCacheFromSize()
Images needs to be cacheable to be compressed. |
protected boolean |
mayRestrictCacheSize()
Check if this handler may force the cached resource to be less than the cache max size. |
protected void |
readImage()
Read in the image |
protected void |
removeCache(java.lang.Exception e)
Remove the cachestream and the cache entry. |
void |
setup(Logger logger,
SProperties prop)
Setup this class. |
protected void |
tryconvert()
Try to convert the image. |
protected void |
writeHeader()
Write the response header |
| Methods inherited from class rabbit.handler.BaseHandler |
|---|
clientStreamHasCache, finishStream, getFactory, handle, logError, logError, prepareStream, send, setPartialContent, writeData |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Constructor Detail |
|---|
public ImageHandler()
public ImageHandler(Connection con,
HTTPHeader request,
HTTPHeader response,
HTTPInputStream contentstream,
MultiOutputStream clientstream,
boolean maycache,
boolean mayfilter,
long size)
con - the Connection handling the request.request - the actual request made.response - the actual response.contentstream - the stream to read data from.clientstream - the stream to write data to.maycache - May we cache this request?mayfilter - May we filter this request?size - the size of the data beeing handled.| Method Detail |
|---|
public Handler getNewInstance(Connection connection,
HTTPHeader header,
HTTPHeader webheader,
HTTPInputStream contentStream,
MultiOutputStream out,
boolean maycache,
boolean mayfilter,
long size)
HandlerFactory
getNewInstance in interface HandlerFactorygetNewInstance in class BaseHandlerconnection - the Connection handling the request.header - the request.webheader - the response.contentStream - the data to read.out - the client (and possibly the cache).maycache - if the handler may cache the response.mayfilter - if the handler may filter the response.size - the Size of the data beeing handled (-1 = unknown length).protected boolean mayCacheFromSize()
mayCacheFromSize in class BaseHandlerprotected boolean mayRestrictCacheSize()
mayRestrictCacheSize in class BaseHandler
protected void readImage()
throws java.io.IOException
java.io.IOException - if reading of the image fails.
protected void convertImage()
throws java.io.IOException
java.io.IOException - if conversion fails.
protected void tryconvert()
throws java.io.IOException
java.io.IOException
protected void writeHeader()
throws java.io.IOException
writeHeader in class BaseHandlerjava.io.IOException - if writing the response fails.
public void addCacheStream()
throws java.io.IOException
addCacheStream in class BaseHandlerjava.io.IOException - if a cachestream couldnt be set up.
protected void finish()
throws java.io.IOException
finish in class BaseHandlerjava.io.IOException - if cleaning fails.protected void removeCache(java.lang.Exception e)
removeCache in class BaseHandlere - the Exception that happened
public void setup(Logger logger,
SProperties prop)
setup in interface HandlerFactorysetup in class BaseHandlerprop - the properties of this class.
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||