"Fossies" - the Fresh Open Source Software archive 
|
||||||||||
| 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 handler first downloads the image runs convert on it and then serves the smaller image.
| Field Summary | |
|---|---|
protected File |
convertedFile
|
| Fields inherited from class rabbit.handler.BaseHandler |
|---|
cacheChannel, con, content, entry, mayCache, mayFilter, request, response, size, tlh, totalRead |
| Constructor Summary | |
|---|---|
ImageHandler()
For creating the factory. |
|
ImageHandler(Connection con,
TrafficLoggerHandler tlh,
HttpHeader request,
HttpHeader response,
ResourceSource content,
boolean mayCache,
boolean mayFilter,
long size,
SProperties config,
boolean doConvert,
int minSizeToConvert,
ImageConverter imageConverter)
Create a new ImageHandler for the given request. |
|
| Method Summary | |
|---|---|
protected void |
addCache()
Set up the cache stream if available. |
boolean |
changesContentSize()
®return true this handler modifies the content. |
protected String |
checkFileType(File typeFile)
|
protected void |
convertImage()
Convert the image into a small low quality image (normally a jpeg). |
protected void |
finish(boolean good)
clear up the mess we made (remove intermediate files etc). |
SProperties |
getConfig()
Get the current configuration of this handler |
boolean |
getDoConvert()
Get the convert flag |
int |
getMinSizeToConvert()
Only try to convert images larger than this size |
Handler |
getNewInstance(Connection con,
TrafficLoggerHandler tlh,
HttpHeader header,
HttpHeader webHeader,
ResourceSource content,
boolean mayCache,
boolean mayFilter,
long size)
Get a new Handler for the given request made. |
void |
handle()
Try to convert the image before letting the superclass handle it. |
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()
Remove the cachestream and the cache entry. |
void |
setDoConvert(boolean doConvert)
Śet the convert flag |
void |
setup(SProperties prop,
HttpProxy proxy)
setup the handler factory. |
protected void |
tryconvert()
Try to convert the image. |
| Methods inherited from class rabbit.handler.BaseHandler |
|---|
blockSent, bufferRead, deleteFile, failed, finishData, finishedRead, getLogger, httpHeaderSent, mayTransfer, prepare, send, sendHeader, setPartialContent, timeout, writeCache |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
|---|
protected File convertedFile
| Constructor Detail |
|---|
public ImageHandler()
public ImageHandler(Connection con,
TrafficLoggerHandler tlh,
HttpHeader request,
HttpHeader response,
ResourceSource content,
boolean mayCache,
boolean mayFilter,
long size,
SProperties config,
boolean doConvert,
int minSizeToConvert,
ImageConverter imageConverter)
con - the Connection handling the request.tlh - the logger for the data trafficrequest - the actual request made.response - the actual response.content - the resource.mayCache - May we cache this request?mayFilter - May we filter this request?size - the size of the data beeing handled.config - the configuration of this handlerdoConvert - image comprssion will only be attempted if trueminSizeToConvert - images less than this many bytes are not compressedimageConverter - the actual converter to use| Method Detail |
|---|
public Handler getNewInstance(Connection con,
TrafficLoggerHandler tlh,
HttpHeader header,
HttpHeader webHeader,
ResourceSource content,
boolean mayCache,
boolean mayFilter,
long size)
HandlerFactory
getNewInstance in interface HandlerFactorygetNewInstance in class BaseHandlercon - the Connection handling the request.tlh - the Traffic logger handler.header - the request.webHeader - the response.content - the resource.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).
public boolean changesContentSize()
changesContentSize in interface HandlerchangesContentSize in class BaseHandlerprotected boolean mayCacheFromSize()
mayCacheFromSize in class BaseHandlerprotected boolean mayRestrictCacheSize()
mayRestrictCacheSize in class BaseHandlerpublic void handle()
handle in interface Handlerhandle in class BaseHandlerprotected void addCache()
BaseHandler
addCache in class BaseHandlerprotected void finish(boolean good)
finish in class BaseHandlergood - if true then the connection may be restarted,
if false then the connection may not be restaredprotected void removeCache()
removeCache in class BaseHandlerprotected void tryconvert()
protected void readImage()
protected void convertImage()
protected String checkFileType(File typeFile)
throws IOException
IOExceptionpublic void setDoConvert(boolean doConvert)
doConvert - if true then image conversion will be triedpublic boolean getDoConvert()
public SProperties getConfig()
public int getMinSizeToConvert()
public void setup(SProperties prop,
HttpProxy proxy)
HandlerFactory
setup in interface HandlerFactorysetup in class BaseHandlerprop - the properties for this factoryproxy - the HttpProxy using this HandlerFactory
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||