Interface IIOMetadataController
public interface IIOMetadataController
An interface to be implemented by objects that can determine the settings of an IIOMetadata
object, either by putting up a GUI to obtain values from a user, or by other means. This interface merely specifies a generic activate
method that invokes the controller, without regard for how the controller obtains values (i.e., whether the controller puts up a GUI or merely computes a set of values is irrelevant to this interface).
Within the activate
method, a controller obtains initial values by querying the IIOMetadata
object's settings, either using the XML DOM tree or a plug-in specific interface, modifies values by whatever means, then modifies the IIOMetadata
object's settings, using either the setFromTree
or mergeTree
methods, or a plug-in specific interface. In general, applications may expect that when the activate
method returns true
, the IIOMetadata
object is ready for use in a write operation.
Vendors may choose to provide GUIs for the IIOMetadata
subclasses they define for a particular plug-in. These can be set up as default controllers in the corresponding IIOMetadata
subclasses.
Alternatively, an algorithmic process such as a database lookup or the parsing of a command line could be used as a controller, in which case the activate
method would simply look up or compute the settings, call methods on IIOMetadata
to set its state, and return true
.
- See Also:
-
IIOMetadata.setController(javax.imageio.metadata.IIOMetadataController)
,IIOMetadata.getController()
,IIOMetadata.getDefaultController()
,IIOMetadata.hasController()
,IIOMetadata.activateController()
Method Summary
Modifier and Type | Method | Description |
---|---|---|
boolean | activate(IIOMetadata metadata) | Activates the controller. |
Method Detail
activate
boolean activate(IIOMetadata metadata)
Activates the controller. If true
is returned, all settings in the IIOMetadata
object should be ready for use in a write operation. If false
is returned, no settings in the IIOMetadata
object will be disturbed (i.e., the user canceled the operation).
- Parameters:
-
metadata
- theIIOMetadata
object to be modified. - Returns:
-
true
if theIIOMetadata
has been modified,false
otherwise. - Throws:
-
IllegalArgumentException
- ifmetadata
isnull
or is not an instance of the correct class.