## org.opengis.coverage.grid
Interface GridCoverageWriter

Deprecated. In favor of migrating to ISO 19123 definition for Coverage.

    public interface GridCoverageWriter

Support for writing grid coverages into a persistent store. Instance of `GridCoverageWriter` are obtained through a call to `GridCoverageExchange.getWriter(java.lang.Object, org.opengis.coverage.grid.Format)`. Grid coverages are usually added to the output stream in a sequential order.

WARNING: THIS CLASS WILL CHANGE. Current API is derived from OGC Grid Coverages Implementation specification 1.0. We plan to replace it by new interfaces derived from ISO 19123 (Schema for coverage geometry and functions). Current interfaces should be considered as legacy and are included in this distribution only because they were part of GeoAPI 1.0 release. We will try to preserve as much compatibility as possible, but no migration plan has been determined yet.

Since:
  GeoAPI 2.0
See Also:
  `GridCoverageExchange.getWriter(java.lang.Object, org.opengis.coverage.grid.Format)`, `ImageWriter`

Method Summary
`void` `dispose()` Deprecated. Allows any resources held by this object to be released.
`Object` `getDestination()` Deprecated. Returns the output destination.
`Format` `getFormat()` Deprecated. Returns the format handled by this `GridCoverageWriter`.
`String[]` `getMetadataNames()` Deprecated. Returns the list of metadata keywords associated with the output destination as a whole (not associated with any particular grid coverage).
`void` `setCurrentSubname(String name)` Deprecated. Set the name for the next grid coverage to write within the output destination.
`void` `setMetadataValue(String name, String value)` Deprecated. Sets the metadata value for a given metadata name.
`void` `write(GridCoverage coverage, GeneralParameterValue[] parameters)` Deprecated. Writes the specified grid coverage.

Method Detail

### getFormat

    Format getFormat()

  Deprecated.
  Returns the format handled by this `GridCoverageWriter`.

### getDestination

    Object getDestination()

  Deprecated.
  Returns the output destination. This is the object passed to the `GridCoverageExchange.getWriter(java.lang.Object, org.opengis.coverage.grid.Format)` method. It can be a `String`, an `OutputStream`, a `FileChannel`, etc.

### getMetadataNames

    String[] getMetadataNames()

  Deprecated.
  Returns the list of metadata keywords associated with the output destination as a whole (not associated with any particular grid coverage). If no metadata is allowed, the array will be empty.

  Returns:
    The list of metadata keywords for the output destination.
  Throws:
    `IOException` - if an error occurs during reading or writing.
  TODO:
    This javadoc may not apply thats well in the iterator scheme.

### setMetadataValue

    void setMetadataValue(String name,
                          String value)
                          throws IOException,
                                 MetadataNameNotFoundException

  Deprecated.
  Sets the metadata value for a given metadata name.

  Parameters:
    `name` - Metadata keyword for which to set the metadata.
    `value` - The metadata value for the given metadata name.
  Throws:
    `IOException` - if an error occurs during writing.
    `MetadataNameNotFoundException` - if the specified metadata name is not handled for this format.
  TODO:
    This javadoc may not apply thats well in the iterator scheme.

### setCurrentSubname

    void setCurrentSubname(String name)
                           throws IOException

  Deprecated.
  Set the name for the next grid coverage to write within the output destination. The subname can been fetch later at reading time.

  Throws:
    `IOException` - if an error occurs during writing.
  TODO:
    Do we need a special method for that, or should it be a metadata?

### write

    void write(GridCoverage coverage,
               GeneralParameterValue[] parameters)
               throws IllegalArgumentException,
                      IOException

  Deprecated.
  Writes the specified grid coverage.

  Parameters:
    `coverage` - The grid coverage to write.
    `parameters` - An optional set of parameters. Should be any or all of the parameters returned by `Format.getWriteParameters()`.
  Throws:
    `InvalidParameterNameException` - if a parameter in `parameters` doesn't have a recognized name.
    `InvalidParameterValueException` - if a parameter in `parameters` doesn't have a valid value.
    `ParameterNotFoundException` - if a parameter was required for the operation but was not provided in the `parameters` list.
    `FileFormatNotCompatibleWithGridCoverageException` - if the grid coverage can't be exported in the writer format.
    `IOException` - if the export failed for some other input/output reason, including `IIOException` if an error was thrown by the underlying image library.
    `IllegalArgumentException`

### dispose

    void dispose()
                 throws IOException

  Deprecated.
  Allows any resources held by this object to be released. The result of calling any other method subsequent to a call to this method is undefined. It is important for applications to call this method when they know they will no longer be using this `GridCoverageWriter`. Otherwise, the writer may continue to hold on to resources indefinitely.

  Throws:
    `IOException` - if an error occured while disposing resources (for example while flushing data and closing a file).

Copyright © 1994-2008 Open Geospatial Consortium. All Rights Reserved.