# Enum Class WritableGridCoverageResource.CommonOption

Object
Enum<WritableGridCoverageResource.CommonOption>
CommonOption

All Implemented Interfaces:
  `Serializable`, `Comparable<WritableGridCoverageResource​.CommonOption>`, `Constable`, `WritableGridCoverageResource​.Option`

Enclosing interface:
  `WritableGridCoverageResource`

public static enum WritableGridCoverageResource.CommonOption extends Enum<WritableGridCoverageResource.CommonOption> implements WritableGridCoverageResource.Option
Write options that may apply to any data store. The coverage write operation is configured by instances of `WritableGridCoverageResource​.Option`, sometimes in a `DataStore`-specific basis. This `CommonOption` enumeration provides options that do not depend on the data store.

Since:
  1.2

- ## Nested Class Summary

  ### Nested classes/interfaces inherited from class Enum

  `Enum​.EnumDesc<E extends Enum<E>>`

- ## Enum Constant Summary

  Enum Constants
  Enum Constant
  Description
  `REPLACE`
  Instructs the write operation to replace existing coverage if one exists.
  `UPDATE`
  Instructs the write operation to update existing coverage if one exists.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `static WritableGridCoverageResource​.CommonOption`
  `valueOf(String name)`
  Returns the enum constant of this class with the specified name.
  `static WritableGridCoverageResource​.CommonOption[]`
  `values()`
  Returns an array containing the constants of this enum class, in the order they are declared.

  ### Methods inherited from class Enum

  `clone, compareTo, describeConstable, equals, finalize, getDeclaringClass, hashCode, name, ordinal, toString, valueOf`

  ### Methods inherited from class Object

  `getClass, notify, notifyAll, wait, wait, wait`

- ## Enum Constant Details

  - ### REPLACE

    public static final WritableGridCoverageResource.CommonOption REPLACE
    Instructs the write operation to replace existing coverage if one exists. By default (when no option is specified) the write operation will only add new coverages and never modify existing ones. If this option is specified, then there is a choice:
    - If a coverage already exists in the `GridCoverageResource`, then it will be deleted. The existing coverage will be replaced by the new coverage. The old and new coverages may have different grid geometries.
    - If there are no existing coverages in the `GridCoverageResource`, then the new coverage will be added as if this option was not provided.
    This option is mutually exclusive with `UPDATE`.

  - ### UPDATE

    public static final WritableGridCoverageResource.CommonOption UPDATE
    Instructs the write operation to update existing coverage if one exists. If this option is specified, then there is a choice:
    - If a coverage already exists in the `GridCoverageResource`, then:
      - Cells of the provided `GridCoverage` that are within the `GridGeometry` of the existing coverage will overwrite the existing cells. The provided coverage may be resampled to the grid geometry of the existing coverage in this process.
      - Cells outside the `GridGeometry` of the existing coverage are ignored.
    - If there are no existing coverages in the `GridCoverageResource`, then the new coverage will be added as if this option was not provided.
    This option is mutually exclusive with `REPLACE`.

- ## Method Details

  - ### values

    public static WritableGridCoverageResource.CommonOption[] values()
    Returns an array containing the constants of this enum class, in the order they are declared.
    Returns:
      an array containing the constants of this enum class, in the order they are declared

  - ### valueOf

    public static WritableGridCoverageResource.CommonOption valueOf(String name)
    Returns the enum constant of this class with the specified name. The string must match exactly an identifier used to declare an enum constant in this class. (Extraneous whitespace characters are not permitted.)
    Parameters:
      `name` - the name of the enum constant to be returned.
    Returns:
      the enum constant with the specified name
    Throws:
      `IllegalArgumentException` - if this enum class has no constant with the specified name
      `NullPointerException` - if the argument is null