Class 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
Description Provides client-side support of the Internet Imaging Protocol in the rendered mode.
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
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
sourceNames, supportedModes
Fields inherited from interface
Constructor Summary
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
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


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

Constructor Detail


public IIPResolutionDescriptor()

Method Detail


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
getParamMinValue in class OperationDescriptorImpl
index - The index of the parameter to be queried.
An Integer of value 0 if index is 1 or 2, or null if index is 0.
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)


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.

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


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).

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.
The RenderedOp destination.
IllegalArgumentException - if URL is null.
See Also:
JAI, ParameterBlockJAI, RenderedOp