wicket.markup.html.image.resource
Class BufferedDynamicImageResource

java.lang.Object
  extended by wicket.Resource
      extended by wicket.markup.html.WebResource
          extended by wicket.markup.html.DynamicWebResource
              extended by wicket.markup.html.image.resource.DynamicImageResource
                  extended by wicket.markup.html.image.resource.BufferedDynamicImageResource
All Implemented Interfaces:
java.io.Serializable, IRequestListener, IResourceListener

public class BufferedDynamicImageResource
extends DynamicImageResource

A DynamicImageResource subclass that holds a BufferedImage generated by code elsewhere. The image is held in a non-transient field, and so if this resource is clustered, the entire image will be serialized and copied. If you can regenerate your image by drawing on a Graphics2D, you should prefer the RenderedDynamicImageResource class instead since its image data is transient and therefore it is very lightweight when clustered.

The format of the image (and therefore the resource's extension) can be specified with setFormat(String). The default format is "PNG" because JPEG is lossy and makes generated images look bad and GIF has patent issues.

Author:
Jonathan Locke
See Also:
RenderedDynamicImageResource, Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class wicket.markup.html.DynamicWebResource
DynamicWebResource.ResourceState
 
Field Summary
 
Fields inherited from interface wicket.IResourceListener
INTERFACE
 
Constructor Summary
BufferedDynamicImageResource()
          Construct.
BufferedDynamicImageResource(java.util.Locale locale)
          Construct.
BufferedDynamicImageResource(java.lang.String format)
          Construct.
BufferedDynamicImageResource(java.lang.String format, java.util.Locale locale)
          Construct.
 
Method Summary
protected  byte[] getImageData()
          Get image data for our dynamic image resource.
 void setImage(java.awt.image.BufferedImage image)
           
 
Methods inherited from class wicket.markup.html.image.resource.DynamicImageResource
getFormat, getResourceState, setFormat, setLastModifiedTime, toImageData
 
Methods inherited from class wicket.markup.html.DynamicWebResource
getLocale, getResourceStream
 
Methods inherited from class wicket.markup.html.WebResource
configureResponse, setHeaders
 
Methods inherited from class wicket.Resource
getParameters, invalidate, isCacheable, onResourceRequested, setCacheable, setParameters
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

BufferedDynamicImageResource

public BufferedDynamicImageResource()
Construct.


BufferedDynamicImageResource

public BufferedDynamicImageResource(java.util.Locale locale)
Construct.

Parameters:
locale -

BufferedDynamicImageResource

public BufferedDynamicImageResource(java.lang.String format,
                                    java.util.Locale locale)
Construct.

Parameters:
format -
locale -

BufferedDynamicImageResource

public BufferedDynamicImageResource(java.lang.String format)
Construct.

Parameters:
format -
Method Detail

setImage

public void setImage(java.awt.image.BufferedImage image)
Parameters:
image - The image to set

getImageData

protected byte[] getImageData()
Description copied from class: DynamicImageResource
Get image data for our dynamic image resource. If the subclass regenerates the data, it should set the lastModifiedTime when it does so. This ensures that image caching works correctly.

Specified by:
getImageData in class DynamicImageResource
Returns:
The image data for this dynamic image


Copyright © 2004-2007 Wicket developers. All Rights Reserved.