You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@sis.apache.org by de...@apache.org on 2022/11/17 15:18:36 UTC
[sis] branch geoapi-4.0 updated: Post-merge cleaning.
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 6dc1c33f57 Post-merge cleaning.
6dc1c33f57 is described below
commit 6dc1c33f57d89c7249e2b783b49de464e777c699
Author: Martin Desruisseaux <ma...@geomatys.com>
AuthorDate: Thu Nov 17 16:18:15 2022 +0100
Post-merge cleaning.
---
.../sis/internal/jaxb/metadata/replace/QualityParameter.java | 4 ++--
.../main/java/org/apache/sis/metadata/MetadataStandard.java | 3 +--
.../java/org/apache/sis/metadata/StandardImplementation.java | 11 ++++++-----
.../metadata/iso/identification/DefaultOperationMetadata.java | 4 ++++
.../org/apache/sis/metadata/iso/quality/AbstractElement.java | 2 +-
.../org/apache/sis/metadata/iso/quality/AbstractResult.java | 4 +++-
.../metadata/iso/quality/DefaultAggregationDerivation.java | 2 +-
.../apache/sis/metadata/iso/quality/DefaultDataQuality.java | 6 ++++--
.../org/apache/sis/metadata/iso/quality/DefaultMeasure.java | 4 ++++
.../src/main/java/org/apache/sis/parameter/Parameters.java | 9 +++++----
.../test/java/org/apache/sis/parameter/ParametersTest.java | 4 +++-
11 files changed, 34 insertions(+), 19 deletions(-)
diff --git a/core/sis-metadata/src/main/java/org/apache/sis/internal/jaxb/metadata/replace/QualityParameter.java b/core/sis-metadata/src/main/java/org/apache/sis/internal/jaxb/metadata/replace/QualityParameter.java
index fc7dcb875b..039f48574e 100644
--- a/core/sis-metadata/src/main/java/org/apache/sis/internal/jaxb/metadata/replace/QualityParameter.java
+++ b/core/sis-metadata/src/main/java/org/apache/sis/internal/jaxb/metadata/replace/QualityParameter.java
@@ -24,8 +24,6 @@ import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;
import org.opengis.util.TypeName;
import org.opengis.util.InternationalString;
import org.opengis.metadata.Identifier;
-import org.opengis.metadata.quality.Description;
-import org.opengis.metadata.quality.ValueStructure;
import org.opengis.parameter.ParameterDescriptor;
import org.opengis.referencing.operation.Matrix;
import org.apache.sis.metadata.iso.DefaultIdentifier;
@@ -37,6 +35,8 @@ import org.apache.sis.xml.Namespaces;
// Branch-dependent imports
import org.opengis.coverage.Coverage;
+import org.opengis.metadata.quality.Description;
+import org.opengis.metadata.quality.ValueStructure;
/**
diff --git a/core/sis-metadata/src/main/java/org/apache/sis/metadata/MetadataStandard.java b/core/sis-metadata/src/main/java/org/apache/sis/metadata/MetadataStandard.java
index 447f79c90f..4593ae5380 100644
--- a/core/sis-metadata/src/main/java/org/apache/sis/metadata/MetadataStandard.java
+++ b/core/sis-metadata/src/main/java/org/apache/sis/metadata/MetadataStandard.java
@@ -123,7 +123,7 @@ public class MetadataStandard implements Serializable {
* <p>The current implementation does not yet contains the user-defined instances.
* However it may be something that we will need to do in the future.</p>
*/
- private static final MetadataStandard[] INSTANCES;
+ static final MetadataStandard[] INSTANCES;
/**
* An instance working on ISO 19115 standard as defined by GeoAPI interfaces
@@ -153,7 +153,6 @@ public class MetadataStandard implements Serializable {
static {
final String[] acronyms = {"CoordinateSystem", "CS", "CoordinateReferenceSystem", "CRS"};
- // If new StandardImplementation instances are added below, please update StandardImplementation.readResolve().
ISO_19115 = new StandardImplementation("ISO 19115", "org.opengis.metadata.", "org.apache.sis.metadata.iso.", null, (MetadataStandard[]) null);
ISO_19157 = new StandardImplementation("ISO 19157", "org.opengis.metadata.quality.", "org.apache.sis.metadata.iso.quality.", null, ISO_19115);
ISO_19111 = new StandardImplementation("ISO 19111", "org.opengis.referencing.", "org.apache.sis.referencing.", acronyms, ISO_19157, ISO_19115);
diff --git a/core/sis-metadata/src/main/java/org/apache/sis/metadata/StandardImplementation.java b/core/sis-metadata/src/main/java/org/apache/sis/metadata/StandardImplementation.java
index c254319109..fe747929b7 100644
--- a/core/sis-metadata/src/main/java/org/apache/sis/metadata/StandardImplementation.java
+++ b/core/sis-metadata/src/main/java/org/apache/sis/metadata/StandardImplementation.java
@@ -170,14 +170,15 @@ final class StandardImplementation extends MetadataStandard {
}
/**
- * Invoked on deserialization. Returns one of the pre-existing constants if possible.
+ * Invoked on deserialization. Returns one of the preexisting constants if possible.
*/
Object readResolve() throws ObjectStreamException {
- if (ISO_19111.citation.equals(citation)) return ISO_19111;
- if (ISO_19115.citation.equals(citation)) return ISO_19115;
+ for (final MetadataStandard standard : MetadataStandard.INSTANCES) {
+ if (standard.citation.equals(citation)) return standard;
+ }
/*
- * Following should not occurs, unless we are deserializing an instance created by a
- * newer version of the Apache SIS library. The newer version could contains constants
+ * Following should not occur, unless we are deserializing an instance created by a
+ * newer version of the Apache SIS library. The newer version could contain constants
* not yet declared in this older SIS version, so we have to use this instance.
*/
setMapForField(StandardImplementation.class, this, "implementations");
diff --git a/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/identification/DefaultOperationMetadata.java b/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/identification/DefaultOperationMetadata.java
index 4aebb7f7fe..67bb7c7d63 100644
--- a/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/identification/DefaultOperationMetadata.java
+++ b/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/identification/DefaultOperationMetadata.java
@@ -292,6 +292,10 @@ public class DefaultOperationMetadata extends ISOMetadata implements OperationMe
/**
* Returns the parameters that are required for this interface.
*
+ * <h4>Unified parameter API</h4>
+ * In GeoAPI, the {@code SV_Parameter} type defined by ISO 19115 is replaced by {@code ParameterDescriptor}
+ * in order to provide a single parameter API. See {@link org.opengis.parameter} for more information.
+ *
* @return the parameters that are required for this interface, or an empty collection if none.
*/
@Override
diff --git a/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/AbstractElement.java b/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/AbstractElement.java
index b4b639256b..b6828abf88 100644
--- a/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/AbstractElement.java
+++ b/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/AbstractElement.java
@@ -298,7 +298,7 @@ public class AbstractElement extends ISOMetadata implements Element {
*/
private <V> void setMeasureReferenceProperty(final BiConsumer<DefaultMeasureReference,V> setter, final V newValue) {
if (newValue != null) {
- if (!(measureReference instanceof DefaultEvaluationMethod)) {
+ if (!(measureReference instanceof DefaultMeasureReference)) {
measureReference = new DefaultMeasureReference(measureReference);
}
setter.accept((DefaultMeasureReference) measureReference, newValue);
diff --git a/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/AbstractResult.java b/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/AbstractResult.java
index 2813fc5e2b..317bd9b4d3 100644
--- a/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/AbstractResult.java
+++ b/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/AbstractResult.java
@@ -27,11 +27,13 @@ import org.opengis.metadata.quality.CoverageResult;
import org.opengis.metadata.quality.ConformanceResult;
import org.opengis.metadata.quality.QuantitativeResult;
import org.opengis.metadata.quality.DescriptiveResult;
-import org.opengis.metadata.maintenance.Scope;
import org.apache.sis.internal.jaxb.metadata.MD_Scope;
import org.apache.sis.internal.jaxb.gco.GO_DateTime;
import org.apache.sis.internal.metadata.ImplementationHelper;
+// Branch-dependent imports
+import org.opengis.metadata.maintenance.Scope;
+
/**
* Base class of more specific result classes.
diff --git a/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultAggregationDerivation.java b/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultAggregationDerivation.java
index cc1290f709..ad41b94b7a 100644
--- a/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultAggregationDerivation.java
+++ b/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultAggregationDerivation.java
@@ -61,7 +61,7 @@ public class DefaultAggregationDerivation extends DefaultEvaluationMethod implem
*
* @param object the metadata to copy values from, or {@code null} if none.
*
- * @see #castOrCopy(DefaultAggregationDerivation)
+ * @see #castOrCopy(AggregationDerivation)
*/
public DefaultAggregationDerivation(final AggregationDerivation object) {
super(object);
diff --git a/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultDataQuality.java b/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultDataQuality.java
index b60c360ec5..032b0822d5 100644
--- a/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultDataQuality.java
+++ b/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultDataQuality.java
@@ -24,12 +24,14 @@ import org.opengis.metadata.lineage.Lineage;
import org.opengis.metadata.quality.DataQuality;
import org.opengis.metadata.quality.Element;
import org.opengis.metadata.quality.StandaloneQualityReportInformation;
-import org.opengis.metadata.maintenance.Scope;
import org.opengis.metadata.maintenance.ScopeCode;
-import org.apache.sis.metadata.iso.maintenance.DefaultScope;
import org.apache.sis.internal.jaxb.FilterByVersion;
import org.apache.sis.internal.xml.LegacyNamespaces;
+// Branch-dependent imports
+import org.opengis.metadata.maintenance.Scope;
+import org.apache.sis.metadata.iso.maintenance.DefaultScope;
+
/**
* Quality information for the data specified by a data quality scope.
diff --git a/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultMeasure.java b/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultMeasure.java
index 6ab9a82c89..dc39fc82f1 100644
--- a/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultMeasure.java
+++ b/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultMeasure.java
@@ -428,6 +428,10 @@ public class DefaultMeasure extends ISOMetadata implements Measure {
* Returns auxiliary variable(s) used by the data quality measure.
* It shall include its name, definition and value type.
*
+ * <h4>Unified parameter API</h4>
+ * In GeoAPI, the {@code DQM_Parameter} type defined by ISO 19157 is replaced by {@link ParameterDescriptor}
+ * in order to provide a single parameter API. See {@link org.opengis.parameter} for more information.
+ *
* @return auxiliary variable(s) used by data quality measure.
*/
@Override
diff --git a/core/sis-referencing/src/main/java/org/apache/sis/parameter/Parameters.java b/core/sis-referencing/src/main/java/org/apache/sis/parameter/Parameters.java
index 791b8ac013..da11b94aec 100644
--- a/core/sis-referencing/src/main/java/org/apache/sis/parameter/Parameters.java
+++ b/core/sis-referencing/src/main/java/org/apache/sis/parameter/Parameters.java
@@ -308,11 +308,12 @@ public abstract class Parameters implements ParameterValueGroup, Cloneable {
* This method performs the following checks:
*
* <ul>
- * <li>If the {@linkplain DefaultParameterDescriptor#getName() primary name} is an instance of {@code MemberName},
- * returns that primary name.</li>
+ * <li>If the {@linkplain DefaultParameterDescriptor#getName() primary name} is an instance of {@code MemberName}
+ * (for example a {@link org.apache.sis.referencing.NamedIdentifier} subclass), returns that primary name.</li>
* <li>Otherwise this method searches for the first {@linkplain DefaultParameterDescriptor#getAlias() alias}
- * which is an instance of {@code MemberName}. If found, that alias is returned.</li>
- * <li>If no alias is found, then this method tries to build a member name from the primary name and the
+ * which is an instance of {@code MemberName} (a subtype of aliases type).
+ * If found, that alias is returned.</li>
+ * <li>If no alias is found, then this method tries to build a {@code MemberName} from the primary name and the
* {@linkplain DefaultParameterDescriptor#getValueClass() value class}, using the mapping defined in
* {@link org.apache.sis.util.iso.DefaultTypeName} javadoc.</li>
* </ul>
diff --git a/core/sis-referencing/src/test/java/org/apache/sis/parameter/ParametersTest.java b/core/sis-referencing/src/test/java/org/apache/sis/parameter/ParametersTest.java
index fdb16740a8..56a1a7dae0 100644
--- a/core/sis-referencing/src/test/java/org/apache/sis/parameter/ParametersTest.java
+++ b/core/sis-referencing/src/test/java/org/apache/sis/parameter/ParametersTest.java
@@ -24,7 +24,6 @@ import org.opengis.parameter.ParameterDescriptor;
import org.opengis.parameter.ParameterDirection;
import org.opengis.parameter.ParameterValue;
import org.opengis.parameter.ParameterValueGroup;
-import org.opengis.metadata.Identifier;
import org.opengis.util.TypeName;
import org.opengis.util.GenericName;
import org.opengis.util.InternationalString;
@@ -39,6 +38,9 @@ import org.junit.Test;
import static org.junit.Assert.*;
+// Branch-dependent imports
+import org.opengis.metadata.Identifier;
+
/**
* Tests the static methods in the {@link Parameters} class.