org.apache.sis.util

## Interface Deprecable

- All Known Implementing Classes:
    AbstractCoordinateOperation, AbstractCRS, AbstractCS, AbstractDatum, AbstractIdentifiedObject, AbstractIdentifiedType, AbstractOperation, AbstractParameterDescriptor, AbstractReferenceSystem, DefaultAffineCS, DefaultAssociationRole, DefaultAttributeType, DefaultCartesianCS, DefaultCompoundCRS, DefaultCompoundCS, DefaultConversion, DefaultCoordinateSystemAxis, DefaultCylindricalCS, DefaultDerivedCRS, DefaultEllipsoid, DefaultEllipsoidalCS, DefaultEngineeringCRS, DefaultEngineeringDatum, DefaultFeatureType, DefaultGeocentricCRS, DefaultGeodeticDatum, DefaultGeographicCRS, DefaultImageCRS, DefaultImageDatum, DefaultLinearCS, DefaultOperationMethod, DefaultParameterDescriptor, DefaultParameterDescriptorGroup, DefaultParametricCRS, DefaultParametricCS, DefaultParametricDatum, DefaultPassThroughOperation, DefaultPolarCS, DefaultPrimeMeridian, DefaultProjectedCRS, DefaultSphericalCS, DefaultTemporalCRS, DefaultTemporalDatum, DefaultTimeCS, DefaultTransformation, DefaultUserDefinedCS, DefaultVerticalCRS, DefaultVerticalCS, DefaultVerticalDatum, GeohashReferenceSystem, MilitaryGridReferenceSystem, ReferencingByIdentifiers

      public interface Deprecable

  Interface of classes for which deprecated instances may exist. Despite the name, the entities deprecated by this interface are unrelated to the entities deprecated by the Java `Deprecated` annotation. This interface is for identifying deprecated data rather than language constructs.
  Example: When an error is discovered in the definition of a Coordinate Reference System (CRS) in the EPSG database, the EPSG maintainers do not change the data. Instead, they deprecate the erroneous definition and create a new one with a new EPSG code. The `isDeprecated()` method in this interface allows users to identify CRS instances created from such deprecated database records, for example in order to log a warning when data are projected to a deprecated CRS.
  Some examples of deprecated instances are:
  - An `AbstractIdentifiedObject` (typically a CRS) which has been built from a deprecated EPSG code.
  - A `NamedIdentifier` containing the legacy name of an object which has been renamed.
  Since:
    0.3

  Defined in the `sis-utility` module

- - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method and Description
    --- | ---
    `InternationalString` | `getRemarks()` If this instance is deprecated, the reason or the alternative to use.
    `boolean` | `isDeprecated()` Returns `true` if this instance is deprecated.

- - ### Method Detail

    - #### isDeprecated

          boolean isDeprecated()

      Returns `true` if this instance is deprecated. In such case, the remarks may contain information about the new object to use.
      Returns:
        `true` if this instance is deprecated.

    - #### getRemarks

          InternationalString getRemarks()

      If this instance is deprecated, the reason or the alternative to use. Otherwise, an optional free text.
      Example: "superseded by code XYZ".
      Returns:
        comments about this instance, or `null` if none. Shall be the reason for deprecation or the alternative to use if this instance is deprecated.

Copyright © 2010–2017 The Apache Software Foundation. All rights reserved.