This is an automated email from the ASF dual-hosted git repository.
desruisseaux pushed a commit to branch geoapi-4.0
in repository https://gitbox.apache.org/repos/asf/sis.git
The following commit(s) were added to refs/heads/geoapi-4.0 by this push:
new 6c50bd371c Update for the removal of `GeneralDerivedCRS` from GeoAPI
4.0. This is replaced by direct usage of `DerivedCRS`.
6c50bd371c is described below
commit 6c50bd371c210bb3ee28525f9abe0f2ad59de146
Author: Martin Desruisseaux <[email protected]>
AuthorDate: Tue Apr 16 14:42:06 2024 +0200
Update for the removal of `GeneralDerivedCRS` from GeoAPI 4.0.
This is replaced by direct usage of `DerivedCRS`.
---
.../org/apache/sis/buildtools/book/GEOAPI.lst | 1 -
.../geometry/wrapper/SpatialOperationContext.java | 10 +++----
.../apache/sis/io/wkt/GeodeticObjectParser.java | 2 +-
.../org/apache/sis/io/wkt/MathTransformParser.java | 2 +-
.../main/org/apache/sis/io/wkt/WKTFormat.java | 4 +--
.../main/org/apache/sis/referencing/CRS.java | 12 ++++----
.../apache/sis/referencing/crs/AbstractCRS.java | 7 ++---
.../sis/referencing/crs/AbstractDerivedCRS.java | 12 ++++----
.../sis/referencing/crs/DefaultDerivedCRS.java | 5 ++--
.../referencing/datum/DefaultPrimeMeridian.java | 4 +--
.../referencing/factory/AuthorityFactoryProxy.java | 2 +-
.../factory/MultiAuthoritiesFactory.java | 2 +-
.../factory/sql/CoordinateOperationSet.java | 6 ++--
.../referencing/factory/sql/EPSGCodeFinder.java | 6 ++--
.../operation/AbstractCoordinateOperation.java | 19 ++++++------
.../operation/CoordinateOperationFinder.java | 34 +++++++++++-----------
.../operation/CoordinateOperationRegistry.java | 5 ++--
.../referencing/operation/DefaultConversion.java | 8 ++---
.../operation/DefaultOperationMethod.java | 6 ++--
.../referencing/operation/SubOperationInfo.java | 4 +--
.../operation/transform/ConcatenatedTransform.java | 2 +-
.../referencing/privy/CoordinateOperations.java | 6 ++--
.../sis/referencing/privy/DefinitionVerifier.java | 8 ++---
.../referencing/privy/ReferencingUtilities.java | 5 ++--
.../report/CoordinateOperationMethods.java | 6 ++--
.../report/CoordinateReferenceSystems.java | 5 ++--
.../integration/CoordinateReferenceSystemTest.java | 5 ++--
geoapi/snapshot | 2 +-
.../src/org.apache.sis.gui/bundle/conf/imports.jsh | 1 -
.../org/apache/sis/gui/referencing/CRSChooser.java | 7 ++---
30 files changed, 93 insertions(+), 105 deletions(-)
diff --git
a/buildSrc/src/main/resources/org/apache/sis/buildtools/book/GEOAPI.lst
b/buildSrc/src/main/resources/org/apache/sis/buildtools/book/GEOAPI.lst
index dfea7437fb..ca0059bed2 100644
--- a/buildSrc/src/main/resources/org/apache/sis/buildtools/book/GEOAPI.lst
+++ b/buildSrc/src/main/resources/org/apache/sis/buildtools/book/GEOAPI.lst
@@ -79,7 +79,6 @@ FormatConsistency
Formula
GCP
GCPCollection
-GeneralDerivedCRS
GeneralParameterDescriptor
GeneralParameterValue
GeodeticCRS
diff --git
a/endorsed/src/org.apache.sis.feature/main/org/apache/sis/geometry/wrapper/SpatialOperationContext.java
b/endorsed/src/org.apache.sis.feature/main/org/apache/sis/geometry/wrapper/SpatialOperationContext.java
index 871ce7619b..c372eff258 100644
---
a/endorsed/src/org.apache.sis.feature/main/org/apache/sis/geometry/wrapper/SpatialOperationContext.java
+++
b/endorsed/src/org.apache.sis.feature/main/org/apache/sis/geometry/wrapper/SpatialOperationContext.java
@@ -30,7 +30,7 @@ import org.opengis.referencing.cs.CoordinateSystem;
import org.opengis.referencing.cs.CoordinateSystemAxis;
import org.opengis.referencing.crs.ProjectedCRS;
import org.opengis.referencing.crs.GeographicCRS;
-import org.opengis.referencing.crs.GeneralDerivedCRS;
+import org.opengis.referencing.crs.DerivedCRS;
import org.opengis.referencing.crs.CoordinateReferenceSystem;
import org.opengis.referencing.operation.OperationMethod;
import org.opengis.referencing.operation.TransformException;
@@ -319,8 +319,8 @@ select: if (commonCRS == null) {
if (Units.isLinear(systemUnit) && targetCRS instanceof
GeographicCRS) {
return Projector.instance().create((GeographicCRS) targetCRS,
geometry.getCentroid(), geometryCRS);
}
- if (targetCRS instanceof GeneralDerivedCRS) {
- targetCRS = ((GeneralDerivedCRS) targetCRS).getBaseCRS();
+ if (targetCRS instanceof DerivedCRS) {
+ targetCRS = ((DerivedCRS) targetCRS).getBaseCRS();
} else {
throw new
IncommensurableException(Errors.format(Errors.Keys.InconsistentUnitsForCS_1,
systemUnit));
}
@@ -381,8 +381,8 @@ select: if (commonCRS == null) {
* Note that a CRS can be both derived and geographic, so we need
to do this check first in order to
* avoid derived geographic CRS such as the ones having rotated
poles.
*/
- while (geometryCRS instanceof GeneralDerivedCRS) {
- final GeneralDerivedCRS g = (GeneralDerivedCRS) geometryCRS;
+ while (geometryCRS instanceof DerivedCRS) {
+ final var g = (DerivedCRS) geometryCRS;
centroid =
g.getConversionFromBase().getMathTransform().inverse().transform(centroid,
centroid);
geometryCRS = g.getBaseCRS();
}
diff --git
a/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/io/wkt/GeodeticObjectParser.java
b/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/io/wkt/GeodeticObjectParser.java
index 9486ec792b..4fb5f64603 100644
---
a/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/io/wkt/GeodeticObjectParser.java
+++
b/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/io/wkt/GeodeticObjectParser.java
@@ -1708,7 +1708,7 @@ class GeodeticObjectParser extends MathTransformParser
implements Comparator<Coo
* @param parent the parent element.
* @param dimension the minimal number of dimensions (usually 2).
* @param csType the default coordinate system type, or {@code null}
if unknown.
- * Should be non-null only when parsing a {@link
GeneralDerivedCRS#getBaseCRS()} component.
+ * Should be non-null only when parsing a {@link
DerivedCRS#getBaseCRS()} component.
* @return the {@code "GeodeticCRS"} element as a {@link GeographicCRS} or
{@link GeodeticCRS} object.
* @throws ParseException if the {@code "GeodeticCRS"} element cannot be
parsed.
*
diff --git
a/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/io/wkt/MathTransformParser.java
b/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/io/wkt/MathTransformParser.java
index 79815a42b8..0e2c75750f 100644
---
a/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/io/wkt/MathTransformParser.java
+++
b/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/io/wkt/MathTransformParser.java
@@ -528,7 +528,7 @@ class MathTransformParser extends AbstractParser {
/**
* Returns the operation method for the last math transform parsed. This
is used by
- * {@link GeodeticObjectParser} in order to built {@link
org.opengis.referencing.crs.DerivedCRS}.
+ * {@link GeodeticObjectParser} in order to build {@link
org.opengis.referencing.crs.DerivedCRS}.
*/
final OperationMethod getOperationMethod() {
if (lastMethod == null) {
diff --git
a/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/io/wkt/WKTFormat.java
b/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/io/wkt/WKTFormat.java
index 71eeef9f3d..e3dd12768b 100644
---
a/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/io/wkt/WKTFormat.java
+++
b/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/io/wkt/WKTFormat.java
@@ -109,8 +109,8 @@ import org.opengis.metadata.Identifier;
* <li><strong>The WKT format is not lossless!</strong>
* Objects formatted by {@code WKTFormat} are not guaranteed to be
identical after parsing.
* Some metadata may be lost or altered, but the coordinate operations
between two CRS should produce
- * the same numerical results provided that the two CRS were formatted
independently (do not rely on
- * {@link
org.opengis.referencing.crs.GeneralDerivedCRS#getConversionFromBase()} for
instance).</li>
+ * the same numerical results provided that the two CRS were formatted
independently
+ * (not as inner element of another WKT).</li>
* <li>Instances of this class are not synchronized for multi-threading.
* It is recommended to create separated format instances for each
thread.
* If multiple threads access a {@code WKTFormat} concurrently, it must
be synchronized externally.</li>
diff --git
a/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/CRS.java
b/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/CRS.java
index cf564ec9f8..5cc2248a7b 100644
---
a/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/CRS.java
+++
b/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/CRS.java
@@ -38,9 +38,9 @@ import org.opengis.referencing.crs.SingleCRS;
import org.opengis.referencing.crs.CompoundCRS;
import org.opengis.referencing.crs.CoordinateReferenceSystem;
import org.opengis.referencing.crs.CRSAuthorityFactory;
+import org.opengis.referencing.crs.DerivedCRS;
import org.opengis.referencing.crs.GeodeticCRS;
import org.opengis.referencing.crs.GeographicCRS;
-import org.opengis.referencing.crs.GeneralDerivedCRS;
import org.opengis.referencing.crs.ProjectedCRS;
import org.opengis.referencing.crs.TemporalCRS;
import org.opengis.referencing.crs.VerticalCRS;
@@ -479,7 +479,7 @@ public final class CRS extends Static {
* Suggests a coordinate reference system which could be a common target
for coordinate operations having the
* given sources. This method compares the {@linkplain
#getGeographicBoundingBox(CoordinateReferenceSystem)
* domain of validity} of all given CRSs. If a CRS has a domain of
validity that contains the domain of all other
- * CRS, then that CRS is returned. Otherwise this method verifies if a
{@linkplain GeneralDerivedCRS#getBaseCRS()
+ * CRS, then that CRS is returned. Otherwise this method verifies if a
{@linkplain DerivedCRS#getBaseCRS()
* base CRS} (usually a {@linkplain
org.apache.sis.referencing.crs.DefaultGeographicCRS geographic CRS} instance)
* would be suitable. If no suitable CRS is found, then this method
returns {@code null}.
*
@@ -605,8 +605,8 @@ public final class CRS extends Static {
for (int i=0; i < derivedCRS.length; i++) {
GeographicBoundingBox bbox = null;
final CoordinateReferenceSystem crs = sourceCRS[i];
- if (crs instanceof GeneralDerivedCRS) {
- final SingleCRS baseCRS = ((GeneralDerivedCRS)
crs).getBaseCRS();
+ if (crs instanceof DerivedCRS) {
+ final SingleCRS baseCRS = ((DerivedCRS)
crs).getBaseCRS();
bbox = getGeographicBoundingBox(baseCRS);
if (bbox == null && bestCRS == null && baseCRS
instanceof GeodeticCRS) {
bestCRS = baseCRS; // Fallback to be used if
we don't find anything better.
@@ -1170,8 +1170,8 @@ public final class CRS extends Static {
*
* In case of doubt, this method conservatively returns {@code false}.
*
- * @todo Future SIS implementation may extend the above conditions list.
For example, a radar station could
- * use a polar coordinate system in a <code>DerivedCRS</code>
instance based on a projected CRS.
+ * @todo Future SIS implementation may extend the above conditions list.
For example, a radar station
+ * could use a polar coordinate system in a {@code DerivedCRS}
instance based on a projected CRS.
* Conversely, a future SIS versions may impose more conditions on
<code>EngineeringCRS</code>.
* See <a
href="http://issues.apache.org/jira/browse/SIS-161">SIS-161</a>.
*
diff --git
a/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/crs/AbstractCRS.java
b/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/crs/AbstractCRS.java
index 38c5dff592..7c684047b5 100644
---
a/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/crs/AbstractCRS.java
+++
b/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/crs/AbstractCRS.java
@@ -30,7 +30,7 @@ import org.opengis.referencing.cs.AffineCS;
import org.opengis.referencing.cs.CartesianCS;
import org.opengis.referencing.cs.CoordinateSystem;
import org.opengis.referencing.crs.SingleCRS;
-import org.opengis.referencing.crs.GeneralDerivedCRS;
+import org.opengis.referencing.crs.DerivedCRS;
import org.opengis.referencing.crs.CoordinateReferenceSystem;
import org.apache.sis.referencing.AbstractReferenceSystem;
import org.apache.sis.referencing.cs.AbstractCS;
@@ -473,15 +473,14 @@ public class AbstractCRS extends AbstractReferenceSystem
implements CoordinateRe
* {@link AbstractDerivedCRS}. In such case, the coordinate system axes
shall not be formatted.
*
* <p>This method should return {@code true} when {@code this} CRS is the
value returned by
- * {@link GeneralDerivedCRS#getBaseCRS()} (typically {@link
AbstractDerivedCRS#getBaseCRS()}).
+ * {@link DerivedCRS#getBaseCRS()} (typically {@link
AbstractDerivedCRS#getBaseCRS()}).
* Since the base CRS is the only CRS enclosed in derived CRS, we should
have no ambiguity
* (assuming that the user did not created some weird subclass).</p>
*
* <p>This method should be invoked for WKT 2 formatting only.</p>
*/
- @SuppressWarnings("deprecation")
static boolean isBaseCRS(final Formatter formatter) {
- return formatter.getEnclosingElement(1) instanceof GeneralDerivedCRS;
+ return formatter.getEnclosingElement(1) instanceof DerivedCRS;
}
/**
diff --git
a/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/crs/AbstractDerivedCRS.java
b/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/crs/AbstractDerivedCRS.java
index 759890f96f..e27652217b 100644
---
a/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/crs/AbstractDerivedCRS.java
+++
b/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/crs/AbstractDerivedCRS.java
@@ -25,7 +25,7 @@ import jakarta.xml.bind.annotation.XmlRootElement;
import org.opengis.util.FactoryException;
import org.opengis.referencing.datum.Datum;
import org.opengis.referencing.crs.SingleCRS;
-import org.opengis.referencing.crs.GeneralDerivedCRS;
+import org.opengis.referencing.crs.DerivedCRS;
import org.opengis.referencing.crs.CoordinateReferenceSystem;
import org.opengis.referencing.cs.CoordinateSystem;
import org.opengis.referencing.operation.OperationMethod;
@@ -60,7 +60,7 @@ import org.apache.sis.util.resources.Errors;
DefaultDerivedCRS.class,
DefaultProjectedCRS.class
})
-abstract class AbstractDerivedCRS<C extends Conversion> extends AbstractCRS
implements GeneralDerivedCRS {
+abstract class AbstractDerivedCRS<C extends Conversion> extends AbstractCRS
implements DerivedCRS {
/**
* Serial number for inter-operability with different versions.
*/
@@ -68,7 +68,7 @@ abstract class AbstractDerivedCRS<C extends Conversion>
extends AbstractCRS impl
/**
* The conversion from the {@linkplain #getBaseCRS() base CRS} to this CRS.
- * The base CRS of this {@code GeneralDerivedCRS} is {@link
Conversion#getSourceCRS()}.
+ * The base CRS of this {@code DerivedCRS} is {@link
Conversion#getSourceCRS()}.
*
* <p><b>Consider this field as final!</b>
* This field is modified only at unmarshalling time by {@link
#setConversionFromBase(Conversion)}</p>
@@ -147,7 +147,7 @@ abstract class AbstractDerivedCRS<C extends Conversion>
extends AbstractCRS impl
*
* @param crs the coordinate reference system to copy.
*/
- AbstractDerivedCRS(final GeneralDerivedCRS crs) {
+ AbstractDerivedCRS(final DerivedCRS crs) {
super(crs);
conversionFromBase = createConversionFromBase(null, crs.getBaseCRS(),
crs.getConversionFromBase());
}
@@ -187,7 +187,7 @@ abstract class AbstractDerivedCRS<C extends Conversion>
extends AbstractCRS impl
* Returns the GeoAPI interface implemented by this class.
*/
@Override
- public abstract Class<? extends GeneralDerivedCRS> getInterface();
+ public abstract Class<? extends DerivedCRS> getInterface();
/**
* Returns the datum of the {@linkplain #getBaseCRS() base CRS}.
@@ -241,7 +241,7 @@ abstract class AbstractDerivedCRS<C extends Conversion>
extends AbstractCRS impl
return Utilities.deepEquals(
strict ? conversionFromBase : getConversionFromBase(),
strict ? ((AbstractDerivedCRS)
object).conversionFromBase
- : ((GeneralDerivedCRS)
object).getConversionFromBase(), mode);
+ : ((DerivedCRS)
object).getConversionFromBase(), mode);
} finally {
Semaphores.clear(Semaphores.CONVERSION_AND_CRS);
}
diff --git
a/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/crs/DefaultDerivedCRS.java
b/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/crs/DefaultDerivedCRS.java
index 21aec9e2b5..631d67866d 100644
---
a/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/crs/DefaultDerivedCRS.java
+++
b/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/crs/DefaultDerivedCRS.java
@@ -88,9 +88,8 @@ import org.opengis.referencing.cs.ParametricCS;
* <h2>Immutability and thread safety</h2>
* This base class is immutable and thus thread-safe if the property
<em>values</em> (not necessarily the map itself)
* given to the constructor are also immutable. Most SIS subclasses and
related classes are immutable under similar
- * conditions. This means that unless otherwise noted in the javadoc, {@code
GeneralDerivedCRS} instances created
- * using only SIS factories and static constants can be shared by many objects
and passed between threads without
- * synchronization.
+ * conditions. This means that unless otherwise noted in the javadoc, {@code
DerivedCRS} instances created using only
+ * SIS factories and static constants can be shared by many objects and passed
between threads without synchronization.
*
* @author Martin Desruisseaux (IRD, Geomatys)
* @author Johann Sorel (Geomatys)
diff --git
a/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/datum/DefaultPrimeMeridian.java
b/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/datum/DefaultPrimeMeridian.java
index b9ba5f0f7b..46cca6c3ed 100644
---
a/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/datum/DefaultPrimeMeridian.java
+++
b/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/datum/DefaultPrimeMeridian.java
@@ -26,7 +26,7 @@ import javax.measure.quantity.Angle;
import org.opengis.util.GenericName;
import org.opengis.util.InternationalString;
import org.opengis.referencing.datum.PrimeMeridian;
-import org.opengis.referencing.crs.GeneralDerivedCRS;
+import org.opengis.referencing.crs.DerivedCRS;
import org.apache.sis.referencing.AbstractIdentifiedObject;
import org.apache.sis.referencing.privy.Formulas;
import org.apache.sis.referencing.privy.WKTUtilities;
@@ -327,7 +327,7 @@ public class DefaultPrimeMeridian extends
AbstractIdentifiedObject implements Pr
* @see org.apache.sis.referencing.crs.AbstractCRS#isBaseCRS(Formatter)
*/
private static boolean isElementOfBaseCRS(final Formatter formatter) {
- return formatter.getEnclosingElement(2) instanceof GeneralDerivedCRS;
+ return formatter.getEnclosingElement(2) instanceof DerivedCRS;
}
/**
diff --git
a/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/factory/AuthorityFactoryProxy.java
b/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/factory/AuthorityFactoryProxy.java
index 7893b80b77..6e13333fcd 100644
---
a/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/factory/AuthorityFactoryProxy.java
+++
b/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/factory/AuthorityFactoryProxy.java
@@ -541,7 +541,7 @@ abstract class AuthorityFactoryProxy<T> {
* This field can be declared only after all the above constants.
*/
static final AuthorityFactoryProxy<?>[] PROXIES = new
AuthorityFactoryProxy<?>[] {
- PROJECTED_CRS, // Special kind of GeneralDerivedCRS.
+ PROJECTED_CRS, // Special kind of DerivedCRS.
GEOGRAPHIC_CRS, // Special kind of GeodeticCRS.
GEODETIC_CRS,
VERTICAL_CRS,
diff --git
a/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/factory/MultiAuthoritiesFactory.java
b/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/factory/MultiAuthoritiesFactory.java
index 0bcfff9048..56005e8379 100644
---
a/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/factory/MultiAuthoritiesFactory.java
+++
b/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/factory/MultiAuthoritiesFactory.java
@@ -1680,7 +1680,7 @@ public class MultiAuthoritiesFactory extends
GeodeticAuthorityFactory implements
* @return the combined CRS, or {@code null} if the given information are
not sufficient.
* @throws FactoryException if an error occurred while creating the
combined CRS.
*/
- private static GeneralDerivedCRS combine(final CoordinateReferenceSystem
baseCRS, final Conversion fromBase,
+ private static DerivedCRS combine(final CoordinateReferenceSystem baseCRS,
final Conversion fromBase,
final CoordinateSystem cs) throws FactoryException
{
if (baseCRS != null && fromBase.getSourceCRS() == null &&
fromBase.getTargetCRS() == null) {
diff --git
a/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/factory/sql/CoordinateOperationSet.java
b/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/factory/sql/CoordinateOperationSet.java
index 63cd3c8159..f53666783b 100644
---
a/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/factory/sql/CoordinateOperationSet.java
+++
b/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/factory/sql/CoordinateOperationSet.java
@@ -21,7 +21,7 @@ import java.util.HashMap;
import org.opengis.metadata.Identifier;
import org.opengis.util.FactoryException;
import org.opengis.referencing.AuthorityFactory;
-import org.opengis.referencing.crs.GeneralDerivedCRS;
+import org.opengis.referencing.crs.DerivedCRS;
import org.opengis.referencing.crs.CRSAuthorityFactory;
import org.opengis.referencing.crs.CoordinateReferenceSystem;
import org.opengis.referencing.operation.CoordinateOperation;
@@ -122,8 +122,8 @@ final class CoordinateOperationSet extends
IdentifiedObjectSet<CoordinateOperati
*/
CoordinateReferenceSystem crs;
crs = ((CRSAuthorityFactory)
factory).createCoordinateReferenceSystem(String.valueOf(base));
- if (crs instanceof GeneralDerivedCRS) {
- return ((GeneralDerivedCRS) crs).getConversionFromBase();
+ if (crs instanceof DerivedCRS) {
+ return ((DerivedCRS) crs).getConversionFromBase();
}
}
/*
diff --git
a/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/factory/sql/EPSGCodeFinder.java
b/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/factory/sql/EPSGCodeFinder.java
index 04d74233f7..c3b1bfa3f0 100644
---
a/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/factory/sql/EPSGCodeFinder.java
+++
b/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/factory/sql/EPSGCodeFinder.java
@@ -32,7 +32,7 @@ import org.opengis.referencing.crs.CompoundCRS;
import org.opengis.referencing.crs.GeodeticCRS;
import org.opengis.referencing.crs.TemporalCRS;
import org.opengis.referencing.crs.VerticalCRS;
-import org.opengis.referencing.crs.GeneralDerivedCRS;
+import org.opengis.referencing.crs.DerivedCRS;
import org.opengis.referencing.cs.CoordinateSystem;
import org.opengis.referencing.datum.Datum;
import org.opengis.referencing.datum.Ellipsoid;
@@ -317,8 +317,8 @@ crs: if (isInstance(CoordinateReferenceSystem.class,
object)) {
* ORDER BY COORD_REF_SYS_CODE
*/
final Condition filter;
- if (object instanceof GeneralDerivedCRS) { // No need
to use isInstance(Class, Object) from here.
- filter = dependencies("SOURCE_GEOGCRS_CODE", SingleCRS.class,
((GeneralDerivedCRS) object).getBaseCRS(), true);
+ if (object instanceof DerivedCRS) { // No need to use
isInstance(Class, Object) from here.
+ filter = dependencies("SOURCE_GEOGCRS_CODE", SingleCRS.class,
((DerivedCRS) object).getBaseCRS(), true);
} else if (object instanceof GeodeticCRS) {
filter = dependencies("DATUM_CODE", GeodeticDatum.class,
((GeodeticCRS) object).getDatum(), true);
} else if (object instanceof VerticalCRS) {
diff --git
a/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/operation/AbstractCoordinateOperation.java
b/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/operation/AbstractCoordinateOperation.java
index b75d81ee06..75910575f1 100644
---
a/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/operation/AbstractCoordinateOperation.java
+++
b/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/operation/AbstractCoordinateOperation.java
@@ -34,8 +34,8 @@ import org.opengis.util.InternationalString;
import org.opengis.metadata.Identifier;
import org.opengis.metadata.quality.PositionalAccuracy;
import org.opengis.referencing.IdentifiedObject;
+import org.opengis.referencing.crs.DerivedCRS;
import org.opengis.referencing.crs.GeographicCRS;
-import org.opengis.referencing.crs.GeneralDerivedCRS;
import org.opengis.referencing.crs.CoordinateReferenceSystem;
import org.opengis.referencing.operation.ConcatenatedOperation;
import org.opengis.referencing.operation.CoordinateOperation;
@@ -485,25 +485,24 @@ check: for (int isTarget=0; ; isTarget++) {
// 0 == source check; 1
* But SIS supports also defining conversions with non-null CRS provided
that:
*
* <ul>
- * <li>{@link GeneralDerivedCRS#getBaseCRS()} is the {@linkplain
#getSourceCRS() source CRS} of this operation, and</li>
- * <li>{@link GeneralDerivedCRS#getConversionFromBase()} is this
operation instance.</li>
+ * <li>{@link DerivedCRS#getBaseCRS()} is the {@linkplain
#getSourceCRS() source CRS} of this operation, and</li>
+ * <li>{@link DerivedCRS#getConversionFromBase()} is this operation
instance.</li>
* </ul>
*
* When this method returns {@code true}, the source and target CRS are
not marshalled in XML documents.
*
* @return {@code true} if this coordinate operation is for the definition
of a derived or projected CRS.
*/
- @SuppressWarnings("deprecation")
public boolean isDefiningConversion() {
/*
* Trick: we do not need to verify if (this instanceof Conversion)
because:
* - Only DefaultConversion constructor accepts null source and
target CRS.
- * - GeneralDerivedCRS.getConversionFromBase() return type is
Conversion.
+ * - DerivedCRS.getConversionFromBase() return type is Conversion.
*/
return (sourceCRS == null && targetCRS == null)
- || ((targetCRS instanceof GeneralDerivedCRS)
- && ((GeneralDerivedCRS) targetCRS).getBaseCRS() ==
sourceCRS
- && ((GeneralDerivedCRS) targetCRS).getConversionFromBase()
== this);
+ || ((targetCRS instanceof DerivedCRS)
+ && ((DerivedCRS) targetCRS).getBaseCRS() == sourceCRS
+ && ((DerivedCRS) targetCRS).getConversionFromBase() ==
this);
}
/**
@@ -768,8 +767,8 @@ check: for (int isTarget=0; ; isTarget++) { //
0 == source check; 1
* corresponding wraparound axis in the source CRS because the
<em>easting</em> axis in projected CRS does not
* have a wraparound range meaning. We could argue that
* {@linkplain
org.apache.sis.referencing.cs.DefaultCoordinateSystemAxis#getDirection() axis
directions} match,
- * but such matching is not guaranteed to exist since {@code ProjectedCRS}
is a special case of
- * {@code GeneralDerivedCRS} and derived CRS can have rotations.
+ * but such matching is not guaranteed to exist since {@code ProjectedCRS}
is a special case of {@code DerivedCRS}
+ * and derived CRS can have rotations.
*
* <h4>Default implementation</h4>
* The default implementation infers this set by inspecting the source and
target coordinate system axes.
diff --git
a/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/operation/CoordinateOperationFinder.java
b/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/operation/CoordinateOperationFinder.java
index 985ad9e777..4321c63a26 100644
---
a/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/operation/CoordinateOperationFinder.java
+++
b/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/operation/CoordinateOperationFinder.java
@@ -276,10 +276,10 @@ public class CoordinateOperationFinder extends
CoordinateOperationRegistry {
//// Derived → any Single CRS
////
////
////
////////////////////////////////////////////////////////////////////////////////
- if (sourceCRS instanceof GeneralDerivedCRS) {
- final GeneralDerivedCRS source = (GeneralDerivedCRS) sourceCRS;
- if (targetCRS instanceof GeneralDerivedCRS) {
- return createOperationStep(source, (GeneralDerivedCRS)
targetCRS);
+ if (sourceCRS instanceof DerivedCRS) {
+ final var source = (DerivedCRS) sourceCRS;
+ if (targetCRS instanceof DerivedCRS) {
+ return createOperationStep(source, (DerivedCRS) targetCRS);
}
if (targetCRS instanceof SingleCRS) {
return createOperationStep(source, (SingleCRS) targetCRS);
@@ -290,8 +290,8 @@ public class CoordinateOperationFinder extends
CoordinateOperationRegistry {
//// any Single CRS → Derived
////
////
////
////////////////////////////////////////////////////////////////////////////////
- if (targetCRS instanceof GeneralDerivedCRS) {
- final GeneralDerivedCRS target = (GeneralDerivedCRS) targetCRS;
+ if (targetCRS instanceof DerivedCRS) {
+ final var target = (DerivedCRS) targetCRS;
if (sourceCRS instanceof SingleCRS) {
return createOperationStep((SingleCRS) sourceCRS, target);
}
@@ -367,13 +367,13 @@ public class CoordinateOperationFinder extends
CoordinateOperationRegistry {
/**
* Creates operations from an arbitrary single CRS to a derived coordinate
reference system.
* Conversions from {@code GeographicCRS} to {@code ProjectedCRS} are also
handled by this method,
- * since projected CRS are a special kind of {@code GeneralDerivedCRS}.
+ * since projected CRS are a special kind of {@code DerivedCRS}.
*
* <p>The default implementation constructs the following operation
chain:</p>
- * <blockquote><code>sourceCRS → {@linkplain
GeneralDerivedCRS#getBaseCRS() baseCRS} → targetCRS</code></blockquote>
+ * <blockquote><code>sourceCRS → {@linkplain DerivedCRS#getBaseCRS()
baseCRS} → targetCRS</code></blockquote>
*
* where the conversion from {@code baseCRS} to {@code targetCRS} is
obtained from
- * <code>targetCRS.{@linkplain GeneralDerivedCRS#getConversionFromBase()
getConversionFromBase()}</code>.
+ * <code>targetCRS.{@linkplain DerivedCRS#getConversionFromBase()
getConversionFromBase()}</code>.
*
* <p>This method returns only <em>one</em> step for a chain of
concatenated operations (to be built by the caller).
* But a list is returned because the same step may be implemented by
different operation methods. Only one element
@@ -385,7 +385,7 @@ public class CoordinateOperationFinder extends
CoordinateOperationRegistry {
* @throws FactoryException if the operation cannot be constructed.
*/
protected List<CoordinateOperation> createOperationStep(final SingleCRS
sourceCRS,
- final
GeneralDerivedCRS targetCRS)
+ final DerivedCRS
targetCRS)
throws FactoryException
{
final List<CoordinateOperation> operations =
createOperations(sourceCRS, targetCRS.getBaseCRS());
@@ -403,13 +403,13 @@ public class CoordinateOperationFinder extends
CoordinateOperationRegistry {
/**
* Creates an operation from a derived CRS to an arbitrary single
coordinate reference system.
* Conversions from {@code ProjectedCRS} to {@code GeographicCRS} are also
handled by this method,
- * since projected CRS are a special kind of {@code GeneralDerivedCRS}.
+ * since projected CRS are a special kind of {@code DerivedCRS}.
*
* <p>The default implementation constructs the following operation
chain:</p>
- * <blockquote><code>sourceCRS → {@linkplain
GeneralDerivedCRS#getBaseCRS() baseCRS} → targetCRS</code></blockquote>
+ * <blockquote><code>sourceCRS → {@linkplain DerivedCRS#getBaseCRS()
baseCRS} → targetCRS</code></blockquote>
*
* where the conversion from {@code sourceCRS} to {@code baseCRS} is
obtained from the inverse of
- * <code>sourceCRS.{@linkplain GeneralDerivedCRS#getConversionFromBase()
getConversionFromBase()}</code>.
+ * <code>sourceCRS.{@linkplain DerivedCRS#getConversionFromBase()
getConversionFromBase()}</code>.
*
* <p>This method returns only <em>one</em> step for a chain of
concatenated operations (to be built by the caller).
* But a list is returned because the same step may be implemented by
different operation methods. Only one element
@@ -420,7 +420,7 @@ public class CoordinateOperationFinder extends
CoordinateOperationRegistry {
* @return a coordinate operation from {@code sourceCRS} to {@code
targetCRS}.
* @throws FactoryException if the operation cannot be constructed.
*/
- protected List<CoordinateOperation> createOperationStep(final
GeneralDerivedCRS sourceCRS,
+ protected List<CoordinateOperation> createOperationStep(final DerivedCRS
sourceCRS,
final SingleCRS
targetCRS)
throws FactoryException
{
@@ -462,8 +462,8 @@ public class CoordinateOperationFinder extends
CoordinateOperationRegistry {
* @return a coordinate operation from {@code sourceCRS} to {@code
targetCRS}.
* @throws FactoryException if the operation cannot be constructed.
*/
- protected List<CoordinateOperation> createOperationStep(final
GeneralDerivedCRS sourceCRS,
- final
GeneralDerivedCRS targetCRS)
+ protected List<CoordinateOperation> createOperationStep(final DerivedCRS
sourceCRS,
+ final DerivedCRS
targetCRS)
throws FactoryException
{
final List<CoordinateOperation> operations =
createOperations(sourceCRS.getBaseCRS(), targetCRS.getBaseCRS());
@@ -1267,7 +1267,7 @@ public class CoordinateOperationFinder extends
CoordinateOperationRegistry {
* @param crs the CRS having a conversion that cannot be inverted.
* @return a default error message.
*/
- private String canNotInvert(final GeneralDerivedCRS crs) {
+ private String canNotInvert(final DerivedCRS crs) {
return resources().getString(Resources.Keys.NonInvertibleOperation_1,
label(crs.getConversionFromBase()));
}
}
diff --git
a/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/operation/CoordinateOperationRegistry.java
b/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/operation/CoordinateOperationRegistry.java
index e9f1cc3288..def3586a9b 100644
---
a/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/operation/CoordinateOperationRegistry.java
+++
b/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/operation/CoordinateOperationRegistry.java
@@ -41,7 +41,7 @@ import org.opengis.parameter.ParameterValueGroup;
import org.opengis.referencing.IdentifiedObject;
import org.opengis.referencing.NoSuchAuthorityCodeException;
import org.opengis.referencing.crs.CoordinateReferenceSystem;
-import org.opengis.referencing.crs.GeneralDerivedCRS;
+import org.opengis.referencing.crs.DerivedCRS;
import org.opengis.referencing.crs.GeodeticCRS;
import org.opengis.referencing.crs.SingleCRS;
import org.opengis.referencing.crs.CompoundCRS;
@@ -424,9 +424,8 @@ class CoordinateOperationRegistry {
* axis order, we want to check also the coordinate operations using
(latitude, longitude) axis order
* because they may be the only ones available.</p>
*/
- @SuppressWarnings("deprecation")
private static boolean isEasySearch(final CoordinateReferenceSystem crs) {
- if (crs instanceof GeneralDerivedCRS) {
+ if (crs instanceof DerivedCRS) {
return false;
}
if (crs instanceof CompoundCRS) {
diff --git
a/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/operation/DefaultConversion.java
b/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/operation/DefaultConversion.java
index 0c5331ca99..6ec4bc2908 100644
---
a/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/operation/DefaultConversion.java
+++
b/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/operation/DefaultConversion.java
@@ -28,7 +28,7 @@ import org.opengis.referencing.operation.MathTransform;
import org.opengis.referencing.operation.MathTransformFactory;
import org.opengis.referencing.operation.Matrix;
import org.opengis.referencing.crs.SingleCRS;
-import org.opengis.referencing.crs.GeneralDerivedCRS;
+import org.opengis.referencing.crs.DerivedCRS;
import org.opengis.referencing.crs.CoordinateReferenceSystem;
import org.opengis.referencing.datum.Datum;
import org.apache.sis.referencing.cs.CoordinateSystems;
@@ -223,7 +223,6 @@ public class DefaultConversion extends
AbstractSingleOperation implements Conver
* @param factory the factory to use for creating a transform from the
parameters or for performing axis changes.
* @param actual an array of length 1 where to store the actual
operation method used by the math transform factory.
*/
- @SuppressWarnings("deprecation")
DefaultConversion(final Conversion definition,
final CoordinateReferenceSystem source,
final CoordinateReferenceSystem target,
@@ -250,7 +249,7 @@ public class DefaultConversion extends
AbstractSingleOperation implements Conver
* method in invoked, and attempts to use it can cause
NullPointerException.
*/
final DefaultMathTransformFactory.Context context;
- if (target instanceof GeneralDerivedCRS) {
+ if (target instanceof DerivedCRS) {
context =
ReferencingUtilities.createTransformContext(source, null);
context.setTarget(target.getCoordinateSystem()); //
Using `target` would be unsafe here.
} else {
@@ -394,7 +393,6 @@ public class DefaultConversion extends
AbstractSingleOperation implements Conver
*
* @see
DefaultMathTransformFactory#createParameterizedTransform(ParameterValueGroup,
DefaultMathTransformFactory.Context)
*/
- @SuppressWarnings("deprecation")
public <T extends Conversion> T specialize(final Class<T> baseType,
final CoordinateReferenceSystem sourceCRS, final
CoordinateReferenceSystem targetCRS,
MathTransformFactory factory) throws FactoryException
@@ -408,7 +406,7 @@ public class DefaultConversion extends
AbstractSingleOperation implements Conver
* a dedicated kind of operations, namely Transformation.
*/
ensureCompatibleDatum("sourceCRS", super.getSourceCRS(), sourceCRS);
- if (!(targetCRS instanceof GeneralDerivedCRS)) {
+ if (!(targetCRS instanceof DerivedCRS)) {
ensureCompatibleDatum("targetCRS", super.getTargetCRS(),
targetCRS);
} else {
/*
diff --git
a/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/operation/DefaultOperationMethod.java
b/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/operation/DefaultOperationMethod.java
index 72722234ce..f8f1f15bf3 100644
---
a/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/operation/DefaultOperationMethod.java
+++
b/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/operation/DefaultOperationMethod.java
@@ -33,7 +33,7 @@ import org.opengis.referencing.operation.Projection;
import org.opengis.referencing.operation.MathTransform;
import org.opengis.referencing.operation.OperationMethod;
import org.opengis.referencing.operation.SingleOperation;
-import org.opengis.referencing.crs.GeneralDerivedCRS;
+import org.opengis.referencing.crs.DerivedCRS;
import org.opengis.parameter.GeneralParameterDescriptor;
import org.opengis.parameter.ParameterDescriptorGroup;
import org.opengis.parameter.ParameterDescriptor;
@@ -502,8 +502,8 @@ public class DefaultOperationMethod extends
AbstractIdentifiedObject implements
* CRS is either the immediate parent in WKT 1, or the parent of
the parent in WKT 2.
*/
final FormattableObject parent =
formatter.getEnclosingElement(isWKT1 ? 1 : 2);
- if (parent instanceof GeneralDerivedCRS) {
- final Conversion conversion = ((GeneralDerivedCRS)
parent).getConversionFromBase();
+ if (parent instanceof DerivedCRS) {
+ final Conversion conversion = ((DerivedCRS)
parent).getConversionFromBase();
if (conversion != null) { // Should never be null, but let
be safe.
final ParameterDescriptorGroup descriptor;
if (conversion instanceof Parameterized) { // Usual case
in SIS implementation.
diff --git
a/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/operation/SubOperationInfo.java
b/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/operation/SubOperationInfo.java
index 2c0e08999d..25e09effde 100644
---
a/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/operation/SubOperationInfo.java
+++
b/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/operation/SubOperationInfo.java
@@ -68,8 +68,8 @@ final class SubOperationInfo {
* The returned type is for use with {@link #COMPATIBLE_TYPES}.
*/
private static Class<?> type(SingleCRS crs) {
- while (crs instanceof GeneralDerivedCRS) {
- crs = ((GeneralDerivedCRS) crs).getBaseCRS();
+ while (crs instanceof DerivedCRS) {
+ crs = ((DerivedCRS) crs).getBaseCRS();
}
return crs.getClass();
}
diff --git
a/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/operation/transform/ConcatenatedTransform.java
b/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/operation/transform/ConcatenatedTransform.java
index fbfe79856c..259f16a79b 100644
---
a/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/operation/transform/ConcatenatedTransform.java
+++
b/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/operation/transform/ConcatenatedTransform.java
@@ -493,7 +493,7 @@ class ConcatenatedTransform extends AbstractMathTransform
implements Serializabl
* (often indirectly trough WKT formatting of a {@code "ProjectedCRS"}
element), then the above rule is slightly
* relaxed: we ignore affine transforms in order to accept axis swapping
or unit conversions. We do that in that
* particular case only because the coordinate systems given with the
enclosing {@code CoordinateOperation} or
- * {@code GeneralDerivedCRS} specify the axis swapping and unit
conversions.
+ * {@code DerivedCRS} specify the axis swapping and unit conversions.
* This special case is internal to SIS implementation and should be
unknown to users.</p>
*
* @return the parameterizable transform step, or {@code null} if none.
diff --git
a/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/privy/CoordinateOperations.java
b/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/privy/CoordinateOperations.java
index 1fe647df12..54f7a3bd52 100644
---
a/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/privy/CoordinateOperations.java
+++
b/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/privy/CoordinateOperations.java
@@ -29,7 +29,7 @@ import org.opengis.referencing.cs.CoordinateSystem;
import org.opengis.referencing.cs.CoordinateSystemAxis;
import org.opengis.referencing.crs.CRSFactory;
import org.opengis.referencing.crs.CoordinateReferenceSystem;
-import org.opengis.referencing.crs.GeneralDerivedCRS;
+import org.opengis.referencing.crs.DerivedCRS;
import org.opengis.referencing.operation.OperationMethod;
import org.opengis.referencing.operation.SingleOperation;
import org.opengis.referencing.operation.CoordinateOperation;
@@ -254,8 +254,8 @@ public final class CoordinateOperations extends Static {
*/
public static Set<Integer> wrapAroundChanges(CoordinateReferenceSystem
source, final CoordinateSystem target) {
long changes = changes(source.getCoordinateSystem(), target);
- while (source instanceof GeneralDerivedCRS) {
- source = ((GeneralDerivedCRS) source).getBaseCRS();
+ while (source instanceof DerivedCRS) {
+ source = ((DerivedCRS) source).getBaseCRS();
changes |= changes(source.getCoordinateSystem(), target);
}
final boolean useCache = (changes >= 0 && changes < CACHE.length);
diff --git
a/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/privy/DefinitionVerifier.java
b/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/privy/DefinitionVerifier.java
index 89a06ea9a7..ca7e25b306 100644
---
a/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/privy/DefinitionVerifier.java
+++
b/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/privy/DefinitionVerifier.java
@@ -28,7 +28,7 @@ import org.opengis.referencing.datum.Datum;
import org.opengis.referencing.datum.GeodeticDatum;
import org.opengis.referencing.crs.CRSAuthorityFactory;
import org.opengis.referencing.crs.CoordinateReferenceSystem;
-import org.opengis.referencing.crs.GeneralDerivedCRS;
+import org.opengis.referencing.crs.DerivedCRS;
import org.opengis.referencing.crs.SingleCRS;
import org.opengis.referencing.operation.Conversion;
import org.apache.sis.referencing.CRS;
@@ -312,9 +312,9 @@ public final class DefinitionVerifier {
final SingleCRS crsA = authoritative.next();
final SingleCRS crsG = given.next();
if (!Utilities.equalsApproximately(crsA, crsG)) {
- if (crsA instanceof GeneralDerivedCRS && crsG instanceof
GeneralDerivedCRS) {
- final Conversion cnvA = ((GeneralDerivedCRS)
crsA).getConversionFromBase();
- final Conversion cnvG = ((GeneralDerivedCRS)
crsG).getConversionFromBase();
+ if (crsA instanceof DerivedCRS && crsG instanceof DerivedCRS) {
+ final Conversion cnvA = ((DerivedCRS)
crsA).getConversionFromBase();
+ final Conversion cnvG = ((DerivedCRS)
crsG).getConversionFromBase();
if (!Utilities.equalsApproximately(cnvA, cnvG)) {
return Utilities.equalsApproximately(cnvA.getMethod(),
cnvG.getMethod()) ? CONVERSION : METHOD;
}
diff --git
a/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/privy/ReferencingUtilities.java
b/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/privy/ReferencingUtilities.java
index b8f0346daf..9f2fdeab8e 100644
---
a/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/privy/ReferencingUtilities.java
+++
b/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/privy/ReferencingUtilities.java
@@ -310,15 +310,14 @@ public final class ReferencingUtilities extends Static {
* @param allow3D whether this method is allowed to return
three-dimensional CRS (with ellipsoidal height).
* @return a two-dimensional geographic CRS with standard axes, or {@code
null} if none.
*/
- @SuppressWarnings("deprecation")
public static GeographicCRS
toNormalizedGeographicCRS(CoordinateReferenceSystem crs, final boolean latlon,
final boolean allow3D) {
/*
* ProjectedCRS instances always have a GeographicCRS as their base.
* More generally, derived CRS are always derived from a base, which
* is often (but not necessarily) geographic.
*/
- while (crs instanceof GeneralDerivedCRS) {
- crs = ((GeneralDerivedCRS) crs).getBaseCRS();
+ while (crs instanceof DerivedCRS) {
+ crs = ((DerivedCRS) crs).getBaseCRS();
}
if (crs instanceof GeodeticCRS) {
/*
diff --git
a/endorsed/src/org.apache.sis.referencing/test/org/apache/sis/referencing/report/CoordinateOperationMethods.java
b/endorsed/src/org.apache.sis.referencing/test/org/apache/sis/referencing/report/CoordinateOperationMethods.java
index b0bc91ba11..5bea3d2068 100644
---
a/endorsed/src/org.apache.sis.referencing/test/org/apache/sis/referencing/report/CoordinateOperationMethods.java
+++
b/endorsed/src/org.apache.sis.referencing/test/org/apache/sis/referencing/report/CoordinateOperationMethods.java
@@ -31,7 +31,7 @@ import org.opengis.parameter.*;
import org.opengis.referencing.operation.*;
import org.opengis.referencing.crs.CRSAuthorityFactory;
import org.opengis.referencing.crs.CoordinateReferenceSystem;
-import org.opengis.referencing.crs.GeneralDerivedCRS;
+import org.opengis.referencing.crs.DerivedCRS;
import org.apache.sis.util.ArraysExt;
import org.apache.sis.util.Characters;
import org.apache.sis.util.Numbers;
@@ -418,14 +418,14 @@ public class CoordinateOperationMethods extends
HTMLGenerator {
final CRSAuthorityFactory factory) throws FactoryException
{
final Map<String, DefaultGeographicBoundingBox> domainOfValidity = new
HashMap<>();
- for (final String code :
factory.getAuthorityCodes(GeneralDerivedCRS.class)) {
+ for (final String code : factory.getAuthorityCodes(DerivedCRS.class)) {
final CoordinateReferenceSystem crs;
try {
crs = factory.createCoordinateReferenceSystem(code);
} catch (FactoryException e) {
continue; //
Ignore and inspect the next element.
}
- if (crs instanceof GeneralDerivedCRS derived) {
+ if (crs instanceof DerivedCRS derived) {
final GeographicBoundingBox candidate =
CRS.getGeographicBoundingBox(derived);
if (candidate != null) {
final String name =
derived.getConversionFromBase().getMethod().getName().getCode();
diff --git
a/endorsed/src/org.apache.sis.referencing/test/org/apache/sis/referencing/report/CoordinateReferenceSystems.java
b/endorsed/src/org.apache.sis.referencing/test/org/apache/sis/referencing/report/CoordinateReferenceSystems.java
index 19f1056342..8849db42cc 100644
---
a/endorsed/src/org.apache.sis.referencing/test/org/apache/sis/referencing/report/CoordinateReferenceSystems.java
+++
b/endorsed/src/org.apache.sis.referencing/test/org/apache/sis/referencing/report/CoordinateReferenceSystems.java
@@ -37,7 +37,7 @@ import org.opengis.referencing.crs.VerticalCRS;
import org.opengis.referencing.crs.GeodeticCRS;
import org.opengis.referencing.crs.GeographicCRS;
import org.opengis.referencing.crs.EngineeringCRS;
-import org.opengis.referencing.crs.GeneralDerivedCRS;
+import org.opengis.referencing.crs.DerivedCRS;
import org.opengis.referencing.crs.CoordinateReferenceSystem;
import org.opengis.referencing.crs.CRSAuthorityFactory;
import org.opengis.referencing.datum.Datum;
@@ -408,12 +408,11 @@ public final class CoordinateReferenceSystems extends
AuthorityCodesReport {
/**
* Creates the text to show in the "Remarks" column for the given CRS.
*/
- @SuppressWarnings("deprecation")
private String getRemark(final CoordinateReferenceSystem crs) {
if (crs instanceof GeographicCRS) {
return (crs.getCoordinateSystem().getDimension() == 3) ?
"Geographic 3D" : "Geographic";
}
- if (crs instanceof GeneralDerivedCRS derived) {
+ if (crs instanceof DerivedCRS derived) {
final OperationMethod method =
derived.getConversionFromBase().getMethod();
final Identifier identifier =
IdentifiedObjects.getIdentifier(method, Citations.EPSG);
if (identifier != null) {
diff --git
a/endorsed/src/org.apache.sis.referencing/test/org/apache/sis/test/integration/CoordinateReferenceSystemTest.java
b/endorsed/src/org.apache.sis.referencing/test/org/apache/sis/test/integration/CoordinateReferenceSystemTest.java
index d74ea2bf71..8ef6919d9e 100644
---
a/endorsed/src/org.apache.sis.referencing/test/org/apache/sis/test/integration/CoordinateReferenceSystemTest.java
+++
b/endorsed/src/org.apache.sis.referencing/test/org/apache/sis/test/integration/CoordinateReferenceSystemTest.java
@@ -21,7 +21,6 @@ import org.opengis.referencing.cs.CartesianCS;
import org.opengis.referencing.cs.EllipsoidalCS;
import org.opengis.referencing.crs.DerivedCRS;
import org.opengis.referencing.crs.GeodeticCRS;
-import org.opengis.referencing.crs.GeneralDerivedCRS;
import org.opengis.referencing.crs.CoordinateReferenceSystem;
import org.apache.sis.referencing.CRS;
@@ -69,7 +68,7 @@ public final class CoordinateReferenceSystemTest extends
TestCase {
assertInstanceOf(DerivedCRS .class, crs);
assertInstanceOf(GeodeticCRS.class, crs);
assertInstanceOf(CartesianCS.class, crs.getCoordinateSystem());
- assertInstanceOf(CartesianCS.class, ((GeneralDerivedCRS)
crs).getBaseCRS().getCoordinateSystem());
+ assertInstanceOf(CartesianCS.class, ((DerivedCRS)
crs).getBaseCRS().getCoordinateSystem());
/*
* Some tests are disabled because `EPSGDataAccess` confuse this
derived CRS
* with a projected CRS. We are waiting for upgrade to EPSG database
10+
@@ -81,6 +80,6 @@ public final class CoordinateReferenceSystemTest extends
TestCase {
// assertInstanceOf(DerivedCRS .class, crs);
// assertInstanceOf(GeodeticCRS.class, crs);
assertInstanceOf(CartesianCS.class, crs.getCoordinateSystem());
- assertInstanceOf(EllipsoidalCS.class, ((GeneralDerivedCRS)
crs).getBaseCRS().getCoordinateSystem());
+ assertInstanceOf(EllipsoidalCS.class, ((DerivedCRS)
crs).getBaseCRS().getCoordinateSystem());
}
}
diff --git a/geoapi/snapshot b/geoapi/snapshot
index 62db019354..ada952e12e 160000
--- a/geoapi/snapshot
+++ b/geoapi/snapshot
@@ -1 +1 @@
-Subproject commit 62db019354dc62d805b877c4b37227ed68ed0a7c
+Subproject commit ada952e12e675417e67d13b1a404b62a49b23546
diff --git a/optional/src/org.apache.sis.gui/bundle/conf/imports.jsh
b/optional/src/org.apache.sis.gui/bundle/conf/imports.jsh
index c3ad133108..fd9764ff96 100644
--- a/optional/src/org.apache.sis.gui/bundle/conf/imports.jsh
+++ b/optional/src/org.apache.sis.gui/bundle/conf/imports.jsh
@@ -203,7 +203,6 @@ import
org.opengis.referencing.crs.CoordinateReferenceSystem;
import org.opengis.referencing.crs.DerivedCRS;
import org.opengis.referencing.crs.GeodeticCRS;
import org.opengis.referencing.crs.EngineeringCRS;
-import org.opengis.referencing.crs.GeneralDerivedCRS;
import org.opengis.referencing.crs.GeographicCRS;
import org.opengis.referencing.crs.ProjectedCRS;
import org.opengis.referencing.crs.SingleCRS;
diff --git
a/optional/src/org.apache.sis.gui/main/org/apache/sis/gui/referencing/CRSChooser.java
b/optional/src/org.apache.sis.gui/main/org/apache/sis/gui/referencing/CRSChooser.java
index 1630a4efd2..00886d4597 100644
---
a/optional/src/org.apache.sis.gui/main/org/apache/sis/gui/referencing/CRSChooser.java
+++
b/optional/src/org.apache.sis.gui/main/org/apache/sis/gui/referencing/CRSChooser.java
@@ -52,7 +52,7 @@ import org.opengis.referencing.crs.VerticalCRS;
import org.opengis.referencing.crs.TemporalCRS;
import org.opengis.referencing.crs.CompoundCRS;
import org.opengis.referencing.crs.EngineeringCRS;
-import org.opengis.referencing.crs.GeneralDerivedCRS;
+import org.opengis.referencing.crs.DerivedCRS;
import org.opengis.referencing.crs.CRSAuthorityFactory;
import org.opengis.referencing.crs.CoordinateReferenceSystem;
import org.opengis.referencing.operation.Conversion;
@@ -368,7 +368,6 @@ public class CRSChooser extends
Dialog<CoordinateReferenceSystem> {
/**
* Returns the text to show of right of the "type" label.
*/
- @SuppressWarnings("deprecation")
private static String typeOf(CoordinateReferenceSystem crs, final Locale
locale) {
while (crs instanceof CompoundCRS) {
crs = ((CompoundCRS) crs).getComponents().get(0);
@@ -388,14 +387,14 @@ public class CRSChooser extends
Dialog<CoordinateReferenceSystem> {
String text = Vocabulary.forLocale(locale).getString(key);
final int dimension = ReferencingUtilities.getDimension(crs);
final boolean addDimension = (dimension != expected && expected != 0);
- final boolean isProjection = (crs instanceof GeneralDerivedCRS);
+ final boolean isProjection = (crs instanceof DerivedCRS);
if (addDimension | isProjection) {
final StringBuilder buffer = new StringBuilder(text);
if (addDimension) {
buffer.append(" (").append(dimension).append("D)");
}
if (isProjection) {
- final Conversion conversion = ((GeneralDerivedCRS)
crs).getConversionFromBase();
+ final Conversion conversion = ((DerivedCRS)
crs).getConversionFromBase();
if (conversion != null) {
final OperationMethod method = conversion.getMethod();
if (method != null) {