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 <martin.desruisse...@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.