javax.media.jai.operator
Class IIPResolutionDescriptor

java.lang.Object
  extended byjavax.media.jai.OperationDescriptorImpl
      extended byjavax.media.jai.operator.IIPResolutionDescriptor
All Implemented Interfaces:
OperationDescriptor, RegistryElementDescriptor, Serializable

public class IIPResolutionDescriptor
extends OperationDescriptorImpl

An OperationDescriptor describing the "IIPResolution" operation.

This operation provides client-side support of the Internet Imaging Protocol (IIP) in the rendered mode. It is resolution-specific. It requests from the IIP server an image at a particular resolution level, and creates a java.awt.image.RenderedImage based on the data received from the server. Once the RenderedImage is created, the resolution level cannot be changed.

The layout of the created RenderedImage is set as follows:

The "URL" parameter specifies the URL of the IIP image as a java.lang.String. It must represent a valid URL, and include any required FIF or SDS commands. It cannot be null.

The "resolution" parameter specifies the resolution level of the requested IIP image from the server. The lowest resolution level is 0, with larger integers representing higher resolution levels. If the requested resolution level does not exist, the nearest resolution level is used. If this parameter is not specified, it is set to the default value IIPResolutionDescriptor.MAX_RESOLUTION which indicates the highest resolution level.

The "subImage" parameter indicates the sub-image to be used by the server to get the image at the specified resolution level. This parameter cannot be negative. If this parameter is not specified, it is set to the default value 0.

There is no source image associated with this operation.

If available from the IIP server certain properties may be set on the RenderedImage. The names of properties and the class types of their associated values are listed in the following table.

Property List
Property Name Property Value Class Type
affine-transform java.awt.geom.AffineTransform
app-name java.lang.String
aspect-ratio java.lang.Float
author java.lang.String
colorspace int[]
color-twist float[16]
comment java.lang.String
contrast-adjust java.lang.Float
copyright java.lang.String
create-dtm java.lang.String
edit-time java.lang.String
filtering-value java.lang.Float
iip java.lang.String
iip-server java.lang.String
keywords java.lang.String
last-author java.lang.String
last-printed java.lang.String
last-save-dtm java.lang.String
max-size int[2]
resolution-number java.lang.Integer
rev-number java.lang.String
roi-iip java.awt.geom.Rectangle2D.Float
subject java.lang.String
title java.lang.String

For information on the significance of each of the above properties please refer to the IIP specification.

Resource List
Name Value
GlobalName IIPResolution
LocalName IIPResolution
Vendor com.sun.media.jai
Description Provides client-side support of the Internet Imaging Protocol in the rendered mode.
DocURL http://java.sun.com/products/java-media/jai/forDevelopers/jai-apidocs/javax/media/jai/operator/IIPResolutionDescriptor.html
Version 1.0
arg0Desc The URL of the IIP image.
arg1Desc The resolution level to request.
arg2Desc The sub-image to be used by the server.

Parameter List
Name Class Type Default Value
URL java.lang.String NO_PARAMETER_DEFAULT
resolution java.lang.Integer IIPResolutionDescriptor.MAX_RESOLUTION
subImage java.lang.Integer 0

See Also:
Digital Imaging Group, RenderedImage, IIPDescriptor, Serialized Form

Field Summary
static Integer MAX_RESOLUTION
          Convenience name for Max Resolution of an image on an IIP server.
 
Fields inherited from class javax.media.jai.OperationDescriptorImpl
sourceNames, supportedModes
 
Fields inherited from interface javax.media.jai.OperationDescriptor
NO_PARAMETER_DEFAULT
 
Constructor Summary
IIPResolutionDescriptor()
          Constructor.
 
Method Summary
static RenderedOp create(String URL, Integer resolution, Integer subImage, RenderingHints hints)
          Provides client support of the Internet Imaging Protocol in the rendered mode.
 Number getParamMinValue(int index)
          Returns the minimum legal value of a specified numeric parameter for this operation.
protected  boolean validateParameters(ParameterBlock args, StringBuffer msg)
          Validates the input parameters.
 
Methods inherited from class javax.media.jai.OperationDescriptorImpl
arePropertiesSupported, getDefaultSourceClass, getDestClass, getDestClass, getInvalidRegion, getName, getNumParameters, getNumSources, getParamClasses, getParamDefaults, getParamDefaultValue, getParameterListDescriptor, getParamMaxValue, getParamNames, getPropertyGenerators, getPropertyGenerators, getRenderableDestClass, getRenderableSourceClasses, getResourceBundle, getResources, getSourceClasses, getSourceClasses, getSourceNames, getSupportedModes, isImmediate, isModeSupported, isRenderableSupported, isRenderedSupported, makeDefaultSourceClassList, validateArguments, validateArguments, validateParameters, validateRenderableArguments, validateRenderableSources, validateSources, validateSources
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

MAX_RESOLUTION

public static final Integer MAX_RESOLUTION
Convenience name for Max Resolution of an image on an IIP server.

Constructor Detail

IIPResolutionDescriptor

public IIPResolutionDescriptor()
Constructor.

Method Detail

getParamMinValue

public Number getParamMinValue(int index)
Returns the minimum legal value of a specified numeric parameter for this operation. If the supplied index does not correspond to a numeric parameter, this method returns null.

Specified by:
getParamMinValue in interface OperationDescriptor
Overrides:
getParamMinValue in class OperationDescriptorImpl
Parameters:
index - The index of the parameter to be queried.
Returns:
An Integer of value 0 if index is 1 or 2, or null if index is 0.
Throws:
ArrayIndexOutOfBoundsException - if index is less than 0 or greater than 2.
See Also:
ParameterListDescriptor.getParamValueRange(java.lang.String), ParameterListDescriptor.getEnumeratedParameterValues(java.lang.String), ParameterListDescriptor.isParameterValueValid(java.lang.String, java.lang.Object)

validateParameters

protected boolean validateParameters(ParameterBlock args,
                                     StringBuffer msg)
Validates the input parameters.

In addition to the standard checks performed by the superclass method, this method checks that the supplied URL string specifies a valid protocol.

Overrides:
validateParameters in class OperationDescriptorImpl
See Also:
OperationDescriptorImpl.validateParameters(java.lang.String, java.awt.image.renderable.ParameterBlock, java.lang.StringBuffer)

create

public static RenderedOp create(String URL,
                                Integer resolution,
                                Integer subImage,
                                RenderingHints hints)
Provides client support of the Internet Imaging Protocol in the rendered mode.

Creates a ParameterBlockJAI from all supplied arguments except hints and invokes JAI.create(String,ParameterBlock,RenderingHints).

Parameters:
URL - The URL of the IIP image.
resolution - The resolution level to request. May be null.
subImage - The sub-image to be used by the server. May be null.
hints - The RenderingHints to use. May be null.
Returns:
The RenderedOp destination.
Throws:
IllegalArgumentException - if URL is null.
See Also:
JAI, ParameterBlockJAI, RenderedOp