javax.media.jai.registry
Class RemoteCRIFRegistry

java.lang.Object
  extended byjavax.media.jai.registry.RemoteCRIFRegistry

public final class RemoteCRIFRegistry
extends Object

Utility class to provide type-safe interaction with the OperationRegistry for RemoteCRIF objects. If the OperationRegistry specified as an argument to the methods in this class is null, then JAI.getOperationRegistry() will be used.

Since:
JAI 1.1

Constructor Summary
RemoteCRIFRegistry()
           
 
Method Summary
static RemoteRenderedImage create(OperationRegistry registry, String protocolName, String serverName, String operationName, RenderContext renderContext, ParameterBlock paramBlock)
          Creates a rendering remotely, given the serverName, protocolName, name of the operation to be performed, a RenderContext and a ParameterBlock containing the operation's sources and parameters.
static RemoteCRIF get(OperationRegistry registry, String protocolName)
          Returns the RemoteCRIF registered under the given protocol name in the specified OperationRegistry.
static void register(OperationRegistry registry, String protocolName, RemoteCRIF rcrif)
          Registers the given RemoteCRIF with the given OperationRegistry under the given protocolName
static void unregister(OperationRegistry registry, String protocolName, RemoteCRIF rcrif)
          Unregisters the given RemoteCRIF previously registered under the given protocolName in the given OperationRegistry.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

RemoteCRIFRegistry

public RemoteCRIFRegistry()
Method Detail

register

public static void register(OperationRegistry registry,
                            String protocolName,
                            RemoteCRIF rcrif)
Registers the given RemoteCRIF with the given OperationRegistry under the given protocolName

Parameters:
registry - The OperationRegistry to register the RemoteCRIF with. If this is null, then JAI.getDefaultInstance().getOperationRegistry() will be used.
protocolName - The protocolName to register the RemoteCRIF under.
rcrif - The RemoteCRIF to register.
Throws:
IllegalArgumentException - if protocolName is null.
IllegalArgumentException - if rcrif is null.
IllegalArgumentException - if there is no RemoteDescriptor registered against the given protocolName.

unregister

public static void unregister(OperationRegistry registry,
                              String protocolName,
                              RemoteCRIF rcrif)
Unregisters the given RemoteCRIF previously registered under the given protocolName in the given OperationRegistry.

Parameters:
registry - The OperationRegistry to unregister the RemoteCRIF from. If this is null, then JAI.getDefaultInstance().getOperationRegistry() will be used.
protocolName - The protocolName to unregister the RemoteCRIF from under.
rcrif - The RemoteCRIF to unregister.
Throws:
IllegalArgumentException - if protocolName is null.
IllegalArgumentException - if rcrif is null.
IllegalArgumentException - if there is no RemoteDescriptor registered against the given protocolName.
IllegalArgumentException - if the rcrif was not previously registered against protocolName.

get

public static RemoteCRIF get(OperationRegistry registry,
                             String protocolName)
Returns the RemoteCRIF registered under the given protocol name in the specified OperationRegistry.

Parameters:
registry - The OperationRegistry to use. If this is null, then JAI.getDefaultInstance().getOperationRegistry() will be used.
protocolName - The name of the remote imaging protocol.
Throws:
IllegalArgumentException - if protocolName is null.
IllegalArgumentException - if there is no RemoteDescriptor registered against the given protocolName.

create

public static RemoteRenderedImage create(OperationRegistry registry,
                                         String protocolName,
                                         String serverName,
                                         String operationName,
                                         RenderContext renderContext,
                                         ParameterBlock paramBlock)
Creates a rendering remotely, given the serverName, protocolName, name of the operation to be performed, a RenderContext and a ParameterBlock containing the operation's sources and parameters. The registry is used to determine the RemoteCRIF to be used to instantiate the operation.

Since this class is a simple type-safe wrapper around OperationRegistry's type-unsafe methods, no additional argument validation is performed in this method. Thus errors/exceptions may occur if incorrect values are provided for the input arguments. If argument validation is desired as part of creating a rendering, RemoteJAI.createRenderable() may be used instead to create a RemoteRenderableOp which can then be asked for a rendering.

Exceptions thrown by the RemoteRIFs used to create the rendering will be caught by this method and will not be propagated.

Parameters:
registry - The OperationRegistry to use to create the rendering. If this is null, then JAI.getDefaultInstance().getOperationRegistry() will be used.
protocolName - The protocol to be used for remote imaging.
serverName - The name of the server.
operationName - The name of the operation to be performed remotely.
renderContext - A RenderContext specifying the context in which the rendering should be requested.
paramBlock - The ParameterBlock specifying the sources and parameters required for the operation.
Throws:
IllegalArgumentException - if protocolName is null.
IllegalArgumentException - if there is no RemoteDescriptor registered against the given protocolName.