This is an automated email from the ASF dual-hosted git repository. asf-gitbox-commits pushed a commit to branch main in repository https://gitbox.apache.org/repos/asf/sis.git
commit 98a67510b91eaeaaae60fa05be8fa4111eac3abc Merge: 9ce2bc3042 e3efcc2eaa Author: Martin Desruisseaux <[email protected]> AuthorDate: Fri Oct 2 12:58:54 2026 +0200 Merge branch 'geoapi-3.1'. Mostly grammatical fixes. .../sis/buildtools/coding/ReorganizeImports.java | 2 +- .../apache/sis/buildtools/gradle/ModularTest.java | 2 +- .../resources/IndexedResourceCompiler.java | 2 +- .../org/apache/sis/cloud/aws/s3/FileService.java | 4 +- .../main/org/apache/sis/cloud/aws/s3/Server.java | 4 +- .../main/org/apache/sis/console/CommandRunner.java | 4 +- .../apache/sis/console/IdentifierState.properties | 2 +- .../main/org/apache/sis/coverage/CategoryList.java | 4 +- .../org/apache/sis/coverage/SampleDimension.java | 6 +- .../coverage/grid/CoordinateOperationFinder.java | 6 +- .../apache/sis/coverage/grid/DefaultEvaluator.java | 2 +- .../apache/sis/coverage/grid/DomainLinearizer.java | 2 +- .../apache/sis/coverage/grid/GridCRSBuilder.java | 8 +- .../org/apache/sis/coverage/grid/GridCoverage.java | 2 +- .../sis/coverage/grid/GridCoverageBuilder.java | 4 +- .../apache/sis/coverage/grid/GridDerivation.java | 8 +- .../org/apache/sis/coverage/grid/GridExtent.java | 8 +- .../org/apache/sis/coverage/grid/GridGeometry.java | 12 +- .../apache/sis/coverage/grid/ImageRenderer.java | 14 +-- .../org/apache/sis/coverage/grid/package-info.java | 2 +- .../internal/shared/BandAggregateArgument.java | 2 +- .../org/apache/sis/feature/AbstractAttribute.java | 2 +- .../apache/sis/feature/AbstractIdentifiedType.java | 4 +- .../org/apache/sis/feature/AbstractOperation.java | 2 +- .../org/apache/sis/feature/DefaultFeatureType.java | 2 +- .../org/apache/sis/feature/EnvelopeOperation.java | 2 +- .../apache/sis/feature/SingletonAssociation.java | 2 +- .../org/apache/sis/feature/SingletonAttribute.java | 2 +- .../feature/builder/AssociationRoleBuilder.java | 2 +- .../apache/sis/feature/builder/AttributeRole.java | 2 +- .../sis/feature/builder/AttributeTypeBuilder.java | 18 +-- .../feature/builder/CharacteristicTypeBuilder.java | 2 +- .../sis/feature/builder/FeatureTypeBuilder.java | 2 +- .../sis/feature/builder/PropertyTypeBuilder.java | 2 +- .../apache/sis/feature/builder/TypeBuilder.java | 2 +- .../feature/internal/shared/FeatureProjection.java | 2 +- .../internal/shared/FeatureProjectionBuilder.java | 4 +- .../org/apache/sis/filter/DynamicOptimization.java | 4 +- .../main/org/apache/sis/filter/Optimization.java | 2 +- .../apache/sis/filter/math/ArithmeticFunction.java | 2 +- .../org/apache/sis/filter/visitor/Visitor.java | 4 +- .../apache/sis/geometry/wrapper/GeometryType.java | 4 +- .../geometry/wrapper/SpatialOperationContext.java | 6 +- .../sis/geometry/wrapper/j2d/PathBuilder.java | 2 +- .../sis/geometry/wrapper/j2d/ShapeProperties.java | 4 +- .../geometry/wrapper/jts/PathIteratorAdapter.java | 2 +- .../org/apache/sis/image/BandAggregateLayout.java | 2 +- .../main/org/apache/sis/image/Colorizer.java | 2 +- .../main/org/apache/sis/image/ComputedTiles.java | 2 +- .../main/org/apache/sis/image/ImageCombiner.java | 2 +- .../main/org/apache/sis/image/ImageProcessor.java | 4 +- .../main/org/apache/sis/image/Interpolation.java | 2 +- .../org/apache/sis/image/MultiSourceImage.java | 2 +- .../main/org/apache/sis/image/ResampledImage.java | 2 +- .../main/org/apache/sis/image/TileCache.java | 2 +- .../main/org/apache/sis/image/Transferer.java | 2 +- .../main/org/apache/sis/image/UserProperties.java | 2 +- .../apache/sis/image/WritablePixelIterator.java | 2 +- .../image/internal/shared/ColorModelFactory.java | 14 +-- .../image/internal/shared/ColorScaleBuilder.java | 8 +- .../sis/image/internal/shared/ColorsForRange.java | 4 +- .../internal/shared/WritableUntiledImage.java | 8 +- .../sis/image/processing/isoline/Isolines.java | 2 +- .../sis/image/processing/isoline/Tracer.java | 2 +- .../sis/coverage/grid/GridCoverageBuilderTest.java | 2 +- .../sis/coverage/grid/GridDerivationTest.java | 2 +- .../apache/sis/coverage/grid/GridGeometryTest.java | 2 +- .../coverage/grid/ResampledGridCoverageTest.java | 4 +- .../builder/AssociationRoleBuilderTest.java | 2 +- .../internal/shared/AttributeConventionTest.java | 4 +- .../apache/sis/feature/test/FeatureComparator.java | 2 +- .../org/apache/sis/image/PixelIteratorTest.java | 2 +- .../org/apache/sis/image/ResampledImageTest.java | 4 +- .../test/org/apache/sis/image/TiledImageMock.java | 10 +- .../image/internal/shared/ReshapedImageTest.java | 6 +- .../org/apache/sis/metadata/AbstractMetadata.java | 4 +- .../org/apache/sis/metadata/MetadataCopier.java | 2 +- .../org/apache/sis/metadata/MetadataStandard.java | 12 +- .../apache/sis/metadata/ModifiableMetadata.java | 4 +- .../main/org/apache/sis/metadata/NilReasonMap.java | 8 +- .../apache/sis/metadata/PropertyComparator.java | 4 +- .../apache/sis/metadata/PropertyInformation.java | 2 +- .../org/apache/sis/metadata/TreeNodeChildren.java | 4 +- .../apache/sis/metadata/ValueExistencePolicy.java | 6 +- .../internal/shared/ReferencingServices.java | 2 +- .../apache/sis/metadata/iso/DefaultIdentifier.java | 2 +- .../apache/sis/metadata/iso/DefaultMetadata.java | 2 +- .../org/apache/sis/metadata/iso/ISOMetadata.java | 4 +- .../metadata/iso/acquisition/DefaultObjective.java | 2 +- .../sis/metadata/iso/citation/AbstractParty.java | 2 +- .../sis/metadata/iso/citation/DefaultCitation.java | 2 +- .../sis/metadata/iso/citation/DefaultContact.java | 2 +- .../apache/sis/metadata/iso/extent/Extents.java | 4 +- .../DefaultRepresentativeFraction.java | 2 +- .../metadata/iso/identification/OperationName.java | 2 +- .../main/org/apache/sis/metadata/package-info.java | 2 +- .../metadata/sql/internal/shared/Initializer.java | 6 +- .../metadata/sql/internal/shared/SQLBuilder.java | 26 ++-- .../metadata/sql/internal/shared/ScriptRunner.java | 2 +- .../org/apache/sis/temporal/LenientDateFormat.java | 2 +- .../org/apache/sis/temporal/TemporalObject.java | 4 +- .../org/apache/sis/temporal/TemporalObjects.java | 2 +- .../org/apache/sis/util/iso/AbstractFactory.java | 2 +- .../org/apache/sis/util/iso/DefaultRecordType.java | 2 +- .../org/apache/sis/util/iso/DefaultTypeName.java | 12 +- .../main/org/apache/sis/util/iso/Names.java | 4 +- .../main/org/apache/sis/util/iso/Types.java | 6 +- .../main/org/apache/sis/util/iso/package-info.java | 2 +- .../main/org/apache/sis/xml/IdentifiedObject.java | 4 +- .../main/org/apache/sis/xml/IdentifierMap.java | 4 +- .../main/org/apache/sis/xml/IdentifierSpace.java | 2 +- .../main/org/apache/sis/xml/NilReason.java | 2 +- .../main/org/apache/sis/xml/README.md | 2 +- .../main/org/apache/sis/xml/ReferenceResolver.java | 2 +- .../main/org/apache/sis/xml/TransformedEvent.java | 2 +- .../main/org/apache/sis/xml/Transformer.java | 8 +- .../org/apache/sis/xml/TransformingNamespaces.java | 2 +- .../org/apache/sis/xml/TransformingReader.java | 2 +- .../org/apache/sis/xml/TransformingWriter.java | 4 +- .../main/org/apache/sis/xml/XML.java | 2 +- .../apache/sis/xml/bind/AdapterReplacement.java | 2 +- .../main/org/apache/sis/xml/bind/Context.java | 12 +- .../apache/sis/xml/bind/FinalClassExtensions.java | 2 +- .../apache/sis/xml/bind/IdentifierMapAdapter.java | 6 +- .../sis/xml/bind/ModifiableIdentifierMap.java | 6 +- .../org/apache/sis/xml/bind/ScopedIdentifier.java | 6 +- .../sis/xml/bind/gco/GO_CharacterString.java | 2 +- .../org/apache/sis/xml/bind/gco/GO_Measure.java | 2 +- .../apache/sis/xml/bind/lan/LocaleAndCharset.java | 12 +- .../org/apache/sis/xml/bind/lan/PT_Locale.java | 2 +- .../test/org/apache/sis/metadata/TreeNodeTest.java | 10 +- .../org/apache/sis/metadata/TreeTableViewTest.java | 2 +- .../sis/metadata/iso/DefaultMetadataTest.java | 2 +- .../identification/DefaultBrowseGraphicTest.java | 2 +- .../iso/quality/DefaultQuantitativeResultTest.java | 2 +- .../org/apache/sis/metadata/sql/TestDatabase.java | 2 +- .../org/apache/sis/test/mock/MetadataMock.java | 2 +- .../sis/xml/CharSequenceSubstitutionTest.java | 2 +- .../sis/xml/test/AnnotationConsistencyCheck.java | 2 +- .../apache/sis/xml/test/DocumentComparator.java | 2 +- .../org/apache/sis/openoffice/Transformer.java | 2 +- .../org/apache/sis/map/coverage/RenderingData.java | 4 +- .../main/org/apache/sis/portrayal/Canvas.java | 4 +- .../org/apache/sis/portrayal/CanvasFollower.java | 2 +- .../org/apache/sis/portrayal/PlanarCanvas.java | 2 +- .../apache/sis/profile/japan/netcdf/GCOM_C.java | 2 +- .../gazetteer/MilitaryGridReferenceSystem.java | 12 +- .../gazetteer/ReferencingByIdentifiers.java | 2 +- .../org/apache/sis/geometry/AbstractEnvelope.java | 4 +- .../org/apache/sis/geometry/ArrayEnvelope.java | 4 +- .../org/apache/sis/geometry/CoordinateFormat.java | 12 +- .../org/apache/sis/geometry/DirectPosition1D.java | 4 +- .../org/apache/sis/geometry/DirectPosition2D.java | 4 +- .../main/org/apache/sis/geometry/Envelopes.java | 2 +- .../apache/sis/geometry/GeneralDirectPosition.java | 4 +- .../org/apache/sis/geometry/GeneralEnvelope.java | 6 +- .../apache/sis/geometry/WraparoundAdjustment.java | 2 +- .../main/org/apache/sis/io/wkt/AbstractParser.java | 4 +- .../main/org/apache/sis/io/wkt/ElementKind.java | 2 +- .../apache/sis/io/wkt/GeodeticObjectParser.java | 4 +- .../org/apache/sis/io/wkt/MathTransformParser.java | 2 +- .../main/org/apache/sis/io/wkt/StoredTree.java | 6 +- .../main/org/apache/sis/io/wkt/WKTDictionary.java | 18 +-- .../main/org/apache/sis/io/wkt/WKTFormat.java | 8 +- .../main/org/apache/sis/io/wkt/doc-files/ESRI.txt | 2 +- .../sis/parameter/DefaultParameterValue.java | 4 +- .../sis/parameter/DefaultParameterValueGroup.java | 2 +- .../apache/sis/parameter/ParameterTableRow.java | 2 +- .../main/org/apache/sis/parameter/Parameters.java | 2 +- .../main/org/apache/sis/parameter/Verifier.java | 2 +- .../sis/referencing/AbstractIdentifiedObject.java | 2 +- .../main/org/apache/sis/referencing/Builder.java | 30 ++--- .../main/org/apache/sis/referencing/CRS.java | 8 +- .../main/org/apache/sis/referencing/CommonCRS.java | 70 +++++------ .../sis/referencing/EPSGFactoryFallback.java | 2 +- .../sis/referencing/GeodesicsOnEllipsoid.java | 4 +- .../apache/sis/referencing/GeodeticCalculator.java | 6 +- .../sis/referencing/MultiRegisterOperations.java | 2 +- .../sis/referencing/StandardDefinitions.java | 2 +- .../sis/referencing/crs/AbstractSingleCRS.java | 4 +- .../sis/referencing/crs/DefaultDerivedCRS.java | 4 +- .../sis/referencing/crs/DefaultGeocentricCRS.java | 2 +- .../sis/referencing/crs/DefaultGeographicCRS.java | 10 +- .../sis/referencing/crs/DefaultTemporalCRS.java | 4 +- .../apache/sis/referencing/crs/package-info.java | 6 +- .../apache/sis/referencing/cs/AxesConvention.java | 2 +- .../org/apache/sis/referencing/cs/AxisFilter.java | 2 +- .../sis/referencing/cs/CoordinateSystems.java | 4 +- .../sis/referencing/cs/DefaultVerticalCS.java | 2 +- .../sis/referencing/cs/DirectionAlongMeridian.java | 2 +- .../apache/sis/referencing/cs/package-info.java | 2 +- .../sis/referencing/datum/BursaWolfParameters.java | 2 +- .../sis/referencing/datum/DatumOrEnsemble.java | 18 +-- .../referencing/datum/DefaultDatumEnsemble.java | 12 +- .../referencing/datum/DefaultGeodeticDatum.java | 10 +- .../referencing/factory/GeodeticObjectFactory.java | 2 +- .../referencing/factory/IdentifiedObjectSet.java | 2 +- .../referencing/factory/sql/AuthorityCodes.java | 6 +- .../referencing/factory/sql/EPSGCodeFinder.java | 4 +- .../referencing/factory/sql/EPSGDataAccess.java | 6 +- .../sis/referencing/factory/sql/EPSGFactory.java | 2 +- .../sis/referencing/internal/Arithmetic.java | 2 +- .../apache/sis/referencing/internal/Legacy.java | 2 +- .../sis/referencing/internal/MergedProperties.java | 4 +- .../referencing/internal/ParameterizedAffine.java | 4 +- .../internal/ParameterizedTransformBuilder.java | 4 +- .../referencing/internal/PositionTransformer.java | 2 +- .../apache/sis/referencing/internal/Resources.java | 4 +- .../sis/referencing/internal/Resources.properties | 2 +- .../referencing/internal/ServicesForMetadata.java | 2 +- .../referencing/internal/VerticalDatumTypes.java | 6 +- .../referencing/internal/shared/AxesMapper.java | 2 +- .../internal/shared/DefinitionVerifier.java | 2 +- .../internal/shared/EllipsoidalHeightCombiner.java | 4 +- .../internal/shared/ExtentSelector.java | 8 +- .../referencing/internal/shared/WKTKeywords.java | 2 +- .../referencing/internal/shared/WKTUtilities.java | 2 +- .../operation/AbstractSingleOperation.java | 4 +- .../operation/CoordinateOperationContext.java | 2 +- .../operation/CoordinateOperationFinder.java | 4 +- .../operation/CoordinateOperationRegistry.java | 2 +- .../operation/DefaultOperationMethod.java | 2 +- .../referencing/operation/SubOperationInfo.java | 4 +- .../operation/builder/LinearTransformBuilder.java | 10 +- .../operation/builder/LocalizationGridBuilder.java | 2 +- .../referencing/operation/gridded/GridFile.java | 2 +- .../referencing/operation/gridded/GridGroup.java | 2 +- .../sis/referencing/operation/matrix/Matrices.java | 2 +- .../operation/matrix/NonSquareMatrix.java | 2 +- .../operation/projection/NormalizedProjection.java | 4 +- .../operation/projection/ZonedGridSystem.java | 2 +- .../operation/provider/AbstractProvider.java | 2 +- .../operation/provider/MapProjection.java | 2 +- .../sis/referencing/operation/provider/NTv2.java | 8 +- .../referencing/operation/provider/Wraparound.java | 2 +- .../operation/transform/ContextualParameter.java | 2 +- .../transform/CoordinateSystemTransform.java | 2 +- .../CoordinateSystemTransformBuilder.java | 4 +- .../transform/DefaultMathTransformFactory.java | 2 +- .../operation/transform/DomainDefinition.java | 2 +- .../transform/EllipsoidToCentricTransform.java | 4 +- .../operation/transform/IterationStrategy.java | 2 +- .../operation/transform/TransformJoiner.java | 2 +- .../org/apache/sis/referencing/package-info.java | 2 +- .../sis/xml/bind/referencing/CC_Conversion.java | 2 +- .../referencing/CC_OperationParameterGroup.java | 2 +- .../org/apache/sis/geometry/ArrayEnvelopeTest.java | 2 +- .../org/apache/sis/geometry/Envelope2DTest.java | 2 +- .../sis/geometry/GeneralDirectPositionTest.java | 2 +- .../org/apache/sis/geometry/TransformTestCase.java | 2 +- .../sis/parameter/ParameterMarshallingTest.java | 2 +- .../sis/referencing/EPSGFactoryFallbackTest.java | 2 +- .../sis/referencing/StandardDefinitionsTest.java | 2 +- .../referencing/crs/DefaultProjectedCRSTest.java | 2 +- .../factory/MultiAuthoritiesFactoryTest.java | 2 +- .../referencing/factory/sql/EPSGFactoryTest.java | 2 +- .../internal/PositionalAccuracyConstantTest.java | 2 +- .../internal/shared/WKTKeywordsTest.java | 4 +- .../operation/CoordinateOperationFinderTest.java | 4 +- .../projection/AzimuthalEquidistantTest.java | 2 +- .../projection/MapProjectionTestCase.java | 2 +- .../projection/ObliqueStereographicTest.java | 2 +- .../transform/ExponentialTransform1DTest.java | 2 +- .../transform/LogarithmicTransform1DTest.java | 2 +- .../report/CoordinateReferenceSystems.java | 2 +- .../apache/sis/storage/landsat/LandsatStore.java | 2 +- .../sis/storage/geoheif/ImageResourceBuilder.java | 2 +- .../sis/storage/geoheif/ResourceBuilder.java | 2 +- .../org/apache/sis/storage/isobmff/ByteRanges.java | 4 +- .../apache/sis/storage/isobmff/base/ItemData.java | 2 +- .../sis/storage/isobmff/base/ItemProperties.java | 2 +- .../sis/storage/isobmff/mpeg/ComponentType.java | 2 +- .../sis/storage/geotiff/ImageFileDirectory.java | 4 +- .../apache/sis/storage/geotiff/NativeMetadata.java | 4 +- .../org/apache/sis/storage/geotiff/Writer.java | 2 +- .../apache/sis/storage/geotiff/base/GeoCodes.java | 4 +- .../apache/sis/storage/geotiff/base/GeoKeys.java | 2 +- .../apache/sis/storage/geotiff/base/Predictor.java | 2 +- .../apache/sis/storage/geotiff/base/UnitKey.java | 6 +- .../sis/storage/geotiff/inflater/CCITTRLE.java | 2 +- .../geotiff/inflater/HorizontalPredictor.java | 4 +- .../apache/sis/storage/geotiff/inflater/LZW.java | 2 +- .../sis/storage/geotiff/reader/CRSBuilder.java | 12 +- .../geotiff/reader/GridGeometryBuilder.java | 4 +- .../sis/storage/geotiff/reader/XMLMetadata.java | 6 +- .../sis/storage/geotiff/writer/GeoEncoder.java | 2 +- .../sis/storage/geotiff/GeoTiffStoreTest.java | 2 +- .../sis/storage/geotiff/base/GeoIdentifiers.java | 2 +- .../apache/sis/storage/netcdf/AttributeNames.java | 10 +- .../apache/sis/storage/netcdf/MetadataReader.java | 4 +- .../org/apache/sis/storage/netcdf/NetcdfStore.java | 2 +- .../sis/storage/netcdf/NetcdfStoreProvider.java | 6 +- .../org/apache/sis/storage/netcdf/base/Axis.java | 16 +-- .../apache/sis/storage/netcdf/base/CRSBuilder.java | 4 +- .../apache/sis/storage/netcdf/base/Convention.java | 2 +- .../apache/sis/storage/netcdf/base/DataType.java | 2 +- .../org/apache/sis/storage/netcdf/base/Grid.java | 6 +- .../sis/storage/netcdf/base/GridCacheKey.java | 2 +- .../sis/storage/netcdf/base/GridCacheValue.java | 2 +- .../sis/storage/netcdf/base/GridMapping.java | 4 +- .../sis/storage/netcdf/base/NamedElement.java | 2 +- .../org/apache/sis/storage/netcdf/base/Node.java | 4 +- .../sis/storage/netcdf/base/RasterResource.java | 4 +- .../apache/sis/storage/netcdf/base/Variable.java | 6 +- .../sis/storage/netcdf/classic/ChannelDecoder.java | 11 +- .../sis/storage/netcdf/classic/VariableInfo.java | 6 +- .../sis/storage/netcdf/internal/Resources.java | 2 +- .../storage/netcdf/internal/Resources.properties | 2 +- .../apache/sis/storage/netcdf/package-info.java | 2 +- .../sis/storage/netcdf/ucar/DecoderWrapper.java | 2 +- .../sis/storage/netcdf/ucar/GridWrapper.java | 2 +- .../sis/storage/netcdf/ucar/GroupWrapper.java | 2 +- .../sis/storage/netcdf/ucar/VariableWrapper.java | 6 +- .../main/module-info.java | 13 +- .../org/apache/sis/storage/sql/DataAccess.java | 12 +- .../main/org/apache/sis/storage/sql/SQLStore.java | 2 +- .../apache/sis/storage/sql/SimpleFeatureStore.java | 2 +- .../apache/sis/storage/sql/feature/Analyzer.java | 4 +- .../apache/sis/storage/sql/feature/Database.java | 4 +- .../sis/storage/sql/feature/FeatureIterator.java | 2 +- .../sis/storage/sql/feature/FeatureStream.java | 2 +- .../sis/storage/sql/feature/InfoStatements.java | 8 +- .../sis/storage/sql/feature/SelectionClause.java | 2 +- .../sis/storage/sql/feature/TableAnalyzer.java | 2 +- .../org/apache/sis/storage/sql/package-info.java | 7 +- .../storage/sql/postgis/ExtendedClauseWriter.java | 2 +- .../org/apache/sis/storage/sql/SQLStoreTest.java | 2 +- .../main/org/apache/sis/storage/gps/Fix.java | 2 +- .../org/apache/sis/storage/gpx/Attributes.java | 2 +- .../main/org/apache/sis/storage/gpx/Reader.java | 2 +- .../apache/sis/storage/xml/stream/OutputType.java | 2 +- .../sis/storage/xml/stream/StaxDataStore.java | 4 +- .../org/apache/sis/io/stream/ChannelDataInput.java | 2 +- .../apache/sis/io/stream/ChannelDataOutput.java | 2 +- .../sis/io/stream/ChannelImageOutputStream.java | 2 +- .../main/org/apache/sis/io/stream/IOUtilities.java | 6 +- .../main/org/apache/sis/io/stream/Region.java | 2 +- .../org/apache/sis/io/stream/UpdatableWrite.java | 4 +- .../io/stream/inflater/ComputedByteChannel.java | 2 +- .../sis/storage/AbstractGridCoverageResource.java | 2 +- .../main/org/apache/sis/storage/DataSet.java | 2 +- .../main/org/apache/sis/storage/DataStore.java | 4 +- .../main/org/apache/sis/storage/FeatureNaming.java | 22 ++-- .../main/org/apache/sis/storage/Resource.java | 4 +- .../org/apache/sis/storage/StorageConnector.java | 12 +- .../apache/sis/storage/aggregate/GridSlice.java | 4 +- .../org/apache/sis/storage/aggregate/Group.java | 2 +- .../apache/sis/storage/aggregate/GroupByCRS.java | 2 +- .../sis/storage/aggregate/GroupBySample.java | 6 +- .../sis/storage/aggregate/GroupByTransform.java | 2 +- .../sis/storage/aggregate/JoinFeatureSet.java | 2 +- .../sis/storage/base/GridResourceWrapper.java | 2 +- .../sis/storage/base/URIDataStoreOption.java | 2 +- .../main/org/apache/sis/storage/csv/Store.java | 4 +- .../apache/sis/storage/esri/AsciiGridStore.java | 4 +- .../apache/sis/storage/esri/RawRasterStore.java | 6 +- .../org/apache/sis/storage/event/StoreEvent.java | 4 +- .../main/org/apache/sis/storage/folder/Store.java | 139 +++++++++++++-------- .../apache/sis/storage/folder/WritableStore.java | 2 +- .../org/apache/sis/storage/image/FormatFilter.java | 4 +- .../org/apache/sis/storage/image/FormatFinder.java | 2 +- .../apache/sis/storage/image/WarningListener.java | 2 +- .../sis/storage/image/WorldFileResource.java | 2 +- .../apache/sis/storage/image/WorldFileStore.java | 2 +- .../sis/storage/internal/InputStreamAdapter.java | 2 +- .../apache/sis/storage/metadata/LegalSymbols.java | 2 +- .../sis/storage/metadata/MetadataBuilder.java | 6 +- .../sis/storage/modifier/CoverageModifier.java | 2 +- .../apache/sis/storage/tiling/IterationDomain.java | 2 +- .../sis/storage/tiling/TileMatrixSetFormat.java | 2 +- .../sis/storage/tiling/TiledGridCoverage.java | 4 +- .../storage/tiling/TiledGridCoverageResource.java | 2 +- .../sis/storage/tiling/WritableTileMatrixSet.java | 2 +- .../sis/storage/tiling/WritableTiledResource.java | 2 +- .../main/org/apache/sis/storage/wkt/Store.java | 4 +- .../apache/sis/storage/xml/MimeTypeDetector.java | 2 +- .../main/org/apache/sis/storage/xml/Store.java | 4 +- .../test/org/apache/sis/storage/OptionKeyTest.java | 2 +- .../org/apache/sis/converter/ObjectToString.java | 2 +- .../main/org/apache/sis/io/TableAppender.java | 2 +- .../main/org/apache/sis/math/StatisticsFormat.java | 2 +- .../main/org/apache/sis/measure/AbstractUnit.java | 2 +- .../main/org/apache/sis/measure/Angle.java | 2 +- .../main/org/apache/sis/measure/AngleFormat.java | 2 +- .../org/apache/sis/measure/ConventionalUnit.java | 2 +- .../sis/measure/FormattedCharacterIterator.java | 2 +- .../main/org/apache/sis/measure/Latitude.java | 4 +- .../main/org/apache/sis/measure/Longitude.java | 4 +- .../org/apache/sis/measure/MeasurementRange.java | 4 +- .../main/org/apache/sis/measure/NumberRange.java | 2 +- .../main/org/apache/sis/measure/Quantities.java | 6 +- .../main/org/apache/sis/measure/Range.java | 8 +- .../main/org/apache/sis/measure/Salinity.java | 2 +- .../main/org/apache/sis/measure/Scalar.java | 2 +- .../main/org/apache/sis/measure/ScalarFactory.java | 4 +- .../main/org/apache/sis/measure/SystemUnit.java | 10 +- .../main/org/apache/sis/measure/UnitFormat.java | 6 +- .../main/org/apache/sis/measure/UnitRegistry.java | 10 +- .../main/org/apache/sis/measure/Units.java | 2 +- .../main/org/apache/sis/measure/package-info.java | 2 +- .../main/org/apache/sis/setup/About.java | 2 +- .../main/org/apache/sis/setup/GeometryLibrary.java | 4 +- .../main/org/apache/sis/setup/OptionKey.java | 2 +- .../main/org/apache/sis/system/DataURI.java | 6 +- .../main/org/apache/sis/util/ComparisonMode.java | 4 +- .../sis/util/DefaultInternationalString.java | 2 +- .../org/apache/sis/util/LenientComparable.java | 2 +- .../main/org/apache/sis/util/Locales.java | 2 +- .../main/org/apache/sis/util/ObjectConverter.java | 2 +- .../main/org/apache/sis/util/collection/Cache.java | 8 +- .../sis/util/collection/DefaultTreeTable.java | 4 +- .../apache/sis/util/collection/DerivedList.java | 2 +- .../apache/sis/util/collection/TreeNodeList.java | 4 +- .../org/apache/sis/util/collection/TreeTable.java | 6 +- .../org/apache/sis/util/collection/WeakEntry.java | 2 +- .../sis/util/collection/WeakValueHashMap.java | 8 +- .../sis/util/internal/AutoMessageFormat.java | 2 +- .../sis/util/internal/shared/AbstractMap.java | 8 +- .../org/apache/sis/util/internal/shared/Bag.java | 2 +- .../apache/sis/util/internal/shared/Cloner.java | 2 +- .../sis/util/internal/shared/DoubleDouble.java | 2 +- .../apache/sis/util/internal/shared/Unsafe.java | 10 +- .../apache/sis/util/logging/MonolineFormatter.java | 8 +- .../main/org/apache/sis/util/resources/Errors.java | 4 +- .../apache/sis/util/resources/Errors.properties | 4 +- .../org/apache/sis/util/resources/Messages.java | 4 +- .../apache/sis/util/resources/Messages.properties | 4 +- .../test/org/apache/sis/test/LoggingWatcher.java | 2 +- .../util/resources/IndexedResourceBundleTest.java | 2 +- .../org/apache/sis/storage/geopackage/Content.java | 2 +- .../sis/storage/geopackage/ContentHandler.java | 2 +- .../apache/sis/storage/geopackage/GpkgStore.java | 2 +- .../apache/sis/storage/geojson/GeoJSONMapper.java | 4 +- .../sis/gui/controls/ColorColumnHandler.java | 4 +- .../apache/sis/gui/controls/SyncWindowList.java | 2 +- .../apache/sis/gui/controls/ValueColorMapper.java | 10 +- .../apache/sis/gui/coverage/CoverageCanvas.java | 2 +- .../apache/sis/gui/coverage/CoverageControls.java | 2 +- .../sis/gui/coverage/ImagePropertyExplorer.java | 8 +- .../apache/sis/gui/coverage/ViewAndControls.java | 8 +- .../org/apache/sis/gui/dataset/FeatureTable.java | 2 +- .../apache/sis/gui/dataset/ResourceExplorer.java | 2 +- .../org/apache/sis/gui/dataset/TreeViewType.java | 2 +- .../org/apache/sis/gui/dataset/WindowHandler.java | 4 +- .../apache/sis/gui/internal/BackgroundThreads.java | 2 +- .../apache/sis/gui/internal/DataStoreOpener.java | 2 +- .../org/apache/sis/gui/internal/GUIUtilities.java | 2 +- .../apache/sis/gui/internal/ImageConverter.java | 2 +- .../org/apache/sis/gui/internal/LogHandler.java | 2 +- .../main/org/apache/sis/gui/internal/Styles.java | 2 +- .../org/apache/sis/gui/internal/ToolbarButton.java | 4 +- .../main/org/apache/sis/gui/map/MapCanvas.java | 2 +- .../main/org/apache/sis/gui/map/MapCanvasAWT.java | 2 +- .../main/org/apache/sis/gui/map/MultiCanvas.java | 12 +- .../main/org/apache/sis/gui/map/StatusBar.java | 2 +- .../org/apache/sis/gui/map/ValuesUnderCursor.java | 2 +- .../main/org/apache/sis/gui/metadata/Section.java | 2 +- .../org/apache/sis/gui/referencing/MenuSync.java | 2 +- .../gui/referencing/RecentReferenceSystems.java | 4 +- .../main/org/apache/sis/gui/setup/Wizard.java | 2 +- .../sis/resources/embedded/EmbeddedResources.java | 124 +++++++++++++++++- .../resources/embedded/EmbeddedResourcesTest.java | 42 ++++++- .../apache/sis/resources/embedded/Generator.java | 8 +- .../referencing/factory/sql/epsg/TableValues.java | 2 +- .../main/org/apache/sis/storage/gdal/Band.java | 2 +- .../org/apache/sis/storage/gdal/FieldAccessor.java | 2 +- .../apache/sis/storage/gdal/SubdatasetList.java | 4 +- .../apache/sis/storage/panama/LibraryLoader.java | 2 +- .../sis/storage/panama/LibraryReference.java | 2 +- 469 files changed, 1176 insertions(+), 958 deletions(-) diff --cc endorsed/src/org.apache.sis.feature/main/org/apache/sis/coverage/SampleDimension.java index 5c3cc1533f,0adb37d914..84d57d8ace --- a/endorsed/src/org.apache.sis.feature/main/org/apache/sis/coverage/SampleDimension.java +++ b/endorsed/src/org.apache.sis.feature/main/org/apache/sis/coverage/SampleDimension.java @@@ -572,9 -580,9 +572,9 @@@ public class SampleDimension implement * {@linkplain org.apache.sis.image.ImageProcessor#resample image resampling operations}, * then it should be declared using {@code setBackground(…)} method instead of {@code addQualitative(…)}.</p> * - * <p>A <dfn>quantitative category</dfn> is a range of sample values associated to numbers with units of measurement. + * <p>A <dfn>quantitative category</dfn> is a range of sample values associated with numbers with units of measurement. * For example, 10 = 1.0°C, 11 = 1.1°C, 12 = 1.2°C, <i>etc</i>. A quantitative category has a - * {@linkplain org.opengis.metadata.content.SampleDimension#getTransferFunctionType() transfer function} + * transfer function * (typically a scale factor and an offset) for converting sample values to values expressed * in the unit of measurement.</p> * diff --cc endorsed/src/org.apache.sis.feature/main/org/apache/sis/feature/AbstractAttribute.java index 46a2f43b9c,73e4c55544..78cafafdaf --- a/endorsed/src/org.apache.sis.feature/main/org/apache/sis/feature/AbstractAttribute.java +++ b/endorsed/src/org.apache.sis.feature/main/org/apache/sis/feature/AbstractAttribute.java @@@ -363,10 -369,10 +363,10 @@@ public abstract class AbstractAttribute /** * Returns the characteristics, or an empty map if the characteristics have not yet been built. - * Contrarily to {@link #characteristics()}, this method does not create the map. This method + * Contrary to {@link #characteristics()}, this method does not create the map. This method * is suitable when then caller only wants to read the map and does not plan to write anything. */ - final Map<String,Attribute<?>> characteristicsReadOnly() { + final Map<String,AbstractAttribute<?>> characteristicsReadOnly() { return (characteristics != null) ? characteristics : Collections.emptyMap(); } diff --cc endorsed/src/org.apache.sis.feature/main/org/apache/sis/feature/AbstractIdentifiedType.java index 8e14f72940,2cfcb6040a..7e870be683 --- a/endorsed/src/org.apache.sis.feature/main/org/apache/sis/feature/AbstractIdentifiedType.java +++ b/endorsed/src/org.apache.sis.feature/main/org/apache/sis/feature/AbstractIdentifiedType.java @@@ -252,10 -250,10 +252,10 @@@ public class AbstractIdentifiedType imp * @param prefix the prefix of keys to use for creating the international string. * @param inheritFrom the type from which to inherit a value if none is specified in the map, or {@code null}. * @return the international string, or {@code null} if the given map is null or does not contain values - * associated to keys starting with the given prefix. + * associated with keys starting with the given prefix. */ private static InternationalString toInternationalString( - final Map<String,?> identification, final String prefix, final IdentifiedType inheritFrom) + final Map<String,?> identification, final String prefix, final AbstractIdentifiedType inheritFrom) { InternationalString i18n = Types.toInternationalString(identification, prefix); if (i18n == null && inheritFrom != null) { diff --cc endorsed/src/org.apache.sis.feature/main/org/apache/sis/feature/DefaultFeatureType.java index be3be32256,6d440bb422..0fa8ed8e2f --- a/endorsed/src/org.apache.sis.feature/main/org/apache/sis/feature/DefaultFeatureType.java +++ b/endorsed/src/org.apache.sis.feature/main/org/apache/sis/feature/DefaultFeatureType.java @@@ -630,16 -633,24 +630,16 @@@ public class DefaultFeatureType extend /** * Returns {@code true} if the given base type may be the same or a super-type of the given type, using only - * the name as a criterion. This is a faster check than {@link #isAssignableFrom(FeatureType)}. + * the name as a criterion. This is a faster check than {@link #isAssignableFrom(DefaultFeatureType)}. * - * <p>Performance note: callers should verify that {@code base != type} before to invoke this method.</p> + * <p>Performance note: callers should verify that {@code base != type} before invoking this method.</p> + * + * <p><b>API note:</b> a non-static method would be more elegant in this "SIS for GeoAPI 3.0" branch. + * However this method needs to be static in other SIS branches, because they work with interfaces + * rather than SIS implementation. We keep the method static in this branch too for easier merges.</p> */ - static boolean maybeAssignableFrom(final FeatureType base, final FeatureType type) { - if (type instanceof DefaultFeatureType) { - return ((DefaultFeatureType) type).assignableTo.contains(base.getName()); - } - // Slower path for non-SIS implementations. - if (Objects.equals(base.getName(), type.getName())) { - return true; - } - for (final FeatureType superType : type.getSuperTypes()) { - if (base == superType || maybeAssignableFrom(base, superType)) { - return true; - } - } - return false; + static boolean maybeAssignableFrom(final DefaultFeatureType base, final DefaultFeatureType type) { + return type.assignableTo.contains(base.getName()); } /** diff --cc endorsed/src/org.apache.sis.feature/main/org/apache/sis/feature/EnvelopeOperation.java index 86ad6ec4b2,5c2806c8ec..8b74d58c1e --- a/endorsed/src/org.apache.sis.feature/main/org/apache/sis/feature/EnvelopeOperation.java +++ b/endorsed/src/org.apache.sis.feature/main/org/apache/sis/feature/EnvelopeOperation.java @@@ -398,10 -409,10 +398,10 @@@ final class EnvelopeOperation extends A /* * Try to get CRS from property characteristic. Usually `at` is null and we fallback * on the coordinate operation computed at construction time. In the rare case where - * a CRS characteristic is associated to a particular feature, setting `op` to null + * a CRS characteristic is associated with a particular feature, setting `op` to null * will cause a new coordinate operation to be searched. */ - final var at = ((Attribute<?>) feature.getProperty(attributeNames[i])) + final var at = ((AbstractAttribute<?>) feature.getProperty(attributeNames[i])) .characteristics().get(AttributeConvention.CRS); final Object geomCRS; if (at != null && (geomCRS = at.getValue()) != null) { diff --cc endorsed/src/org.apache.sis.feature/main/org/apache/sis/feature/internal/shared/FeatureProjection.java index 27aad0c1bf,bd260720f8..ad3dc69b3e --- a/endorsed/src/org.apache.sis.feature/main/org/apache/sis/feature/internal/shared/FeatureProjection.java +++ b/endorsed/src/org.apache.sis.feature/main/org/apache/sis/feature/internal/shared/FeatureProjection.java @@@ -100,14 -101,14 +100,14 @@@ public final class FeatureProjection ex /** * Expressions to apply on the source feature for fetching the property values of the projected feature. - * This array has the same length as {@link #propertiesToCopy} and each expression is associated to the + * This array has the same length as {@link #propertiesToCopy} and each expression is associated with the * property at the same index. */ - private final Expression<? super Feature, ?>[] expressions; + private final Expression<? super AbstractFeature, ?>[] expressions; /** - * Whether the {@link #apply(Feature)} method shall create instances of {@link #typeWithDependencies}. - * If {@code false}, then the instances given to the {@link #apply(Feature)} method will be assumed + * Whether the {@link #apply(AbstractFeature)} method shall create instances of {@link #typeWithDependencies}. + * If {@code false}, then the instances given to the {@link #apply(AbstractFeature)} method will be assumed * to be already instances of {@link #typeWithDependencies} and will be modified in-place. */ private final boolean createInstance; diff --cc endorsed/src/org.apache.sis.feature/main/org/apache/sis/filter/visitor/Visitor.java index fa29291f82,7b2e19f863..0ee73301d2 --- a/endorsed/src/org.apache.sis.feature/main/org/apache/sis/filter/visitor/Visitor.java +++ b/endorsed/src/org.apache.sis.feature/main/org/apache/sis/filter/visitor/Visitor.java @@@ -54,15 -55,15 +54,15 @@@ import org.apache.sis.pending.geoapi.te */ public abstract class Visitor<R,A> { /** - * All filters known to this visitor. May contain an entry associated to the {@code null} key, + * All filters known to this visitor. May contain an entry associated with the {@code null} key, * which specifies the action to execute when a {@link Filter} instance is null or has a null type. * - * @see #setFilterHandler(CodeList, BiConsumer) + * @see #setFilterHandler(Enum, BiConsumer) */ - protected final Map<CodeList<?>, BiConsumer<Filter<R>, A>> filters; + protected final Map<Enum<?>, BiConsumer<Filter<R>, A>> filters; /** - * All expressions known to this visitor. May contain an entry associated to the {@code null} key, + * All expressions known to this visitor. May contain an entry associated with the {@code null} key, * which specifies the action to execute when an {@link Expression} instance is null. * * @see #setExpressionHandler(String, BiConsumer) diff --cc endorsed/src/org.apache.sis.metadata/main/org/apache/sis/metadata/iso/citation/DefaultContact.java index 61792addde,4a22e59904..f1a8426c48 --- a/endorsed/src/org.apache.sis.metadata/main/org/apache/sis/metadata/iso/citation/DefaultContact.java +++ b/endorsed/src/org.apache.sis.metadata/main/org/apache/sis/metadata/iso/citation/DefaultContact.java @@@ -236,8 -225,8 +236,8 @@@ public class DefaultContact extends ISO /** * Returns telephone numbers at which the organization or individual may be contacted. - * This method returns the first telephone number associated to {@code TelephoneType.VOICE} - * This method returns the first telephone number associated with {@link TelephoneType#VOICE} - * or {@link TelephoneType#FACSIMILE FACSIMILE}. ++ * This method returns the first telephone number associated with {@code TelephoneType.VOICE} + * or {@code TelephoneType.FACSIMILE FACSIMILE}. * * @return telephone numbers at which the organization or individual may be contacted, or {@code null}. * diff --cc endorsed/src/org.apache.sis.metadata/test/org/apache/sis/metadata/TreeNodeTest.java index 63000d7682,bc656410d7..40586ed2e6 --- a/endorsed/src/org.apache.sis.metadata/test/org/apache/sis/metadata/TreeNodeTest.java +++ b/endorsed/src/org.apache.sis.metadata/test/org/apache/sis/metadata/TreeNodeTest.java @@@ -212,13 -215,12 +212,13 @@@ public final class TreeNodeTest extend "Alternate title (2 of 2)", "Edition", "Cited responsible party (1 of 2)", - "Organisation", - "Name", // In COMPACT mode, this value is associated with "Organisation" node. "Role", + "Party", + "Name", // In COMPACT mode, this value is associated to "Organisation" node. "Cited responsible party (2 of 2)", - "Individual", + "Role", + "Party", - "Name", // In COMPACT mode, this value is associated to "Individual" node. + "Name", // In COMPACT mode, this value is associated with "Individual" node. "Contact info", "Address", "Electronic mail address", @@@ -242,13 -245,12 +242,13 @@@ "alternateTitle", "edition", "citedResponsibleParty", + "role", "party", - "name", // In COMPACT mode, this value is associated to "party" node. + "name", // In COMPACT mode, this value is associated with "party" node. - "role", "citedResponsibleParty", + "role", "party", - "name", // In COMPACT mode, this value is associated to "party" node. + "name", // In COMPACT mode, this value is associated with "party" node. "contactInfo", "address", "electronicMailAddress", @@@ -272,13 -275,12 +272,13 @@@ ONE, // alternateTitle null, // edition ZERO, // citedResponsibleParty + null, // role ZERO, // party (organisation) - null, // name — in COMPACT mode, this value is associated to "party" node. + null, // name — in COMPACT mode, this value is associated with "party" node. - null, // role ONE, // citedResponsibleParty + null, // role ZERO, // party (individual) - null, // name — in COMPACT mode, this value is associated to "party" node. + null, // name — in COMPACT mode, this value is associated with "party" node. ZERO, // contactInfo ZERO, // address ZERO, // electronicMailAddress diff --cc endorsed/src/org.apache.sis.metadata/test/org/apache/sis/xml/test/AnnotationConsistencyCheck.java index 191b318351,ce06c1791f..5f898b1df0 --- a/endorsed/src/org.apache.sis.metadata/test/org/apache/sis/xml/test/AnnotationConsistencyCheck.java +++ b/endorsed/src/org.apache.sis.metadata/test/org/apache/sis/xml/test/AnnotationConsistencyCheck.java @@@ -235,13 -242,11 +235,13 @@@ public abstract class AnnotationConsist * {@link Namespaces#getPreferredPrefix(String, String)}.</p> * * @param impl the implementation class ({@link CodeList} or {@link Enum} type). - * @param uml the UML associated to the class or the method. + * @param uml the UML associated with the class or the method. * @return the expected namespace. * @throws IllegalArgumentException if the given UML is unknown to this method. + * + * @deprecated the complete function is available only on development branch because it depends on GeoAPI 3.1. */ - @SuppressWarnings("deprecation") + @Deprecated protected String getExpectedNamespaceStart(final Class<?> impl, final UML uml) { final String identifier = uml.identifier(); switch (identifier) { diff --cc endorsed/src/org.apache.sis.referencing.gazetteer/main/org/apache/sis/referencing/gazetteer/MilitaryGridReferenceSystem.java index 9e82cf5dd7,b830018494..1fa4acb8fc --- a/endorsed/src/org.apache.sis.referencing.gazetteer/main/org/apache/sis/referencing/gazetteer/MilitaryGridReferenceSystem.java +++ b/endorsed/src/org.apache.sis.referencing.gazetteer/main/org/apache/sis/referencing/gazetteer/MilitaryGridReferenceSystem.java @@@ -756,13 -768,8 +756,13 @@@ public class MilitaryGridReferenceSyste /** * Decodes the given MGRS reference into a position and an envelope. - * The Coordinate Reference System (CRS) associated to the returned position depends on the given reference. + * The Coordinate Reference System (CRS) associated with the returned position depends on the given reference. * + * <div class="warning"><b>Upcoming API change — generalization</b><br> + * in a future SIS version, the type of returned element may be generalized + * to the {@code org.opengis.referencing.gazetteer.Location} interface. + * This change is pending GeoAPI revision.</div> + * * @param reference MGRS string to decode. * @return a new position with the longitude at coordinate 0 and latitude at coordinate 1. * @throws TransformException if an error occurred while parsing the given string. diff --cc endorsed/src/org.apache.sis.referencing/main/org/apache/sis/geometry/DirectPosition2D.java index 93c57c120c,ecc20d42f8..9cdd43b6d1 --- a/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/geometry/DirectPosition2D.java +++ b/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/geometry/DirectPosition2D.java @@@ -229,24 -219,9 +229,24 @@@ public class DirectPosition2D extends P * Returns a sequence of numbers that hold the coordinate of this position in its reference system. * * <div class="note"><b>API note:</b> - * This method is final for ensuring consistency with the {@code x} and {@code y} fields, which are public.</div> + * This method is final to ensure consistency with the {@code x} and {@code y} fields, which are public.</div> * * @return the coordinate. + * @deprecated Renamed {@link #getCoordinates()} for consistency with ISO 19111 terminology. + */ + @Override + @Deprecated(since="1.5") + public final double[] getCoordinate() { + return getCoordinates(); + } + + /** + * Returns a sequence of numbers that hold the coordinate of this position in its reference system. + * + * <div class="note"><b>API note:</b> + * This method is final for ensuring consistency with the {@code x} and {@code y} fields, which are public.</div> + * + * @return the coordinate. * * @since 1.5 */ diff --cc endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/CRS.java index 6324a3b476,a0370290d3..714b32cf95 --- 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 @@@ -1067,23 -1076,9 +1067,23 @@@ public final class CRS return envelope; } + /** + * Returns the frame reference epoch of the given datum, + * or {@code null} if the datum is not dynamic. + */ + private static Temporal getFrameReferenceEpoch(final Datum datum) { + if (datum instanceof DefaultGeodeticDatum.Dynamic) { + return ((DefaultGeodeticDatum.Dynamic) datum).getFrameReferenceEpoch(); + } + if (datum instanceof DefaultVerticalDatum.Dynamic) { + return ((DefaultVerticalDatum.Dynamic) datum).getFrameReferenceEpoch(); + } + return null; + } + /** * Returns the epoch to which the coordinates of stations defining the dynamic CRS are referenced. - * If the CRS is associated to a dynamic datum, then the epoch - * If the CRS is associated with a {@linkplain DynamicReferenceFrame dynamic datum}, then the epoch ++ * If the CRS is associated with a dynamic datum, then the epoch * of that datum is returned. Otherwise if the CRS is {@linkplain CompoundCRS compound}, then this * method requires that all dynamic components have the same epoch. * diff --cc endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/CommonCRS.java index f4094641c2,51be90ee78..7846cc4aa1 --- a/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/CommonCRS.java +++ b/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/CommonCRS.java @@@ -770,11 -768,7 +770,11 @@@ public enum CommonCRS * <tr><td>WGS 84</td> <td>{@link #WGS84}</td> <td>4978</td></tr> * </table></blockquote> * + * <div class="warning"><b>Warning:</b> In a future SIS version, the return type may be changed to the + * {@link GeodeticCRS} parent interface. This is because ISO 19111 does not defines specific interface + * for the geocentric case. Users should assign the return value to a {@code GeodeticCRS} type.</div> + * - * @return the geocentric CRS associated to this enum. + * @return the geocentric CRS associated with this enum. * * @see CRS#forCode(String) * @see DefaultGeocentricCRS @@@ -816,11 -810,7 +816,11 @@@ * <li>Geocentric radius in metres oriented toward {@linkplain AxisDirection#UP up}.</li> * </ol> * + * <div class="warning"><b>Warning:</b> In a future SIS version, the return type may be changed to the + * {@link GeodeticCRS} parent interface. This is because ISO 19111 does not defines specific interface + * for the geocentric case. Users should assign the return value to a {@code GeodeticCRS} type.</div> + * - * @return the geocentric CRS associated to this enum. + * @return the geocentric CRS associated with this enum. * * @see DefaultGeocentricCRS * diff --cc endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/datum/DatumOrEnsemble.java index b1af016e33,0bfd10043d..5786bdbd0b --- a/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/datum/DatumOrEnsemble.java +++ b/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/datum/DatumOrEnsemble.java @@@ -507,8 -532,8 +507,8 @@@ public final class DatumOrEnsemble * <ul> * <li>If the given <abbr>CRS</abbr> is an instance of {@link SingleCRS} and its datum * is a {@link GeodeticDatum}, then this method returns the datum ellipsoid.</li> - * <li>Otherwise, if the given <abbr>CRS</abbr> is an instance of {@link SingleCRS}, is associated to a + * <li>Otherwise, if the given <abbr>CRS</abbr> is an instance of {@link SingleCRS}, is associated with a - * {@link DatumEnsemble}, and all members of the ensemble have equal (ignoring metadata) ellipsoid, + * {@code DatumEnsemble}, and all members of the ensemble have equal (ignoring metadata) ellipsoid, * then returns that ellipsoid.</li> * <li>Otherwise, if the given <abbr>CRS</abbr> is an instance of {@link CompoundCRS}, then this method * searches recursively in each component until a geodetic reference frame is found.</li> diff --cc endorsed/src/org.apache.sis.storage.netcdf/main/org/apache/sis/storage/netcdf/base/Axis.java index ce24bee606,122664a7ce..39ad096fea --- a/endorsed/src/org.apache.sis.storage.netcdf/main/org/apache/sis/storage/netcdf/base/Axis.java +++ b/endorsed/src/org.apache.sis.storage.netcdf/main/org/apache/sis/storage/netcdf/base/Axis.java @@@ -582,7 -582,7 +582,7 @@@ public final class Axis extends NamedEl */ final String alt = coordinates.getAttributeAsString(CDM.LONG_NAME); if (alt != null && !similar(alt, name)) { - properties.put(org.apache.sis.referencing.ImmutableIdentifier.DESCRIPTION_KEY, alt); // Description associated to primary name. - properties.put(org.opengis.metadata.Identifier.DESCRIPTION_KEY, alt); // Description associated with primary name. ++ properties.put(org.apache.sis.referencing.ImmutableIdentifier.DESCRIPTION_KEY, alt); // Description associated with primary name. if (!similar(alt, standardName)) { aliases.add(new NamedIdentifier(null, alt)); // Additional alias. } diff --cc endorsed/src/org.apache.sis.storage/main/org/apache/sis/storage/FeatureNaming.java index dd998fc1bc,b8ff97aacb..12ce34033a --- a/endorsed/src/org.apache.sis.storage/main/org/apache/sis/storage/FeatureNaming.java +++ b/endorsed/src/org.apache.sis.storage/main/org/apache/sis/storage/FeatureNaming.java @@@ -33,9 -33,9 +33,9 @@@ import org.apache.sis.storage.internal. /** * Helper class for mapping {@link GenericName} instances and their shortened names to features. - * The features are typically represented by instances of {@link org.opengis.feature.FeatureType} - * or {@link org.opengis.coverage.Coverage} (sometimes seen as a kind of features), but this class + * The features are typically represented by instances of {@code FeatureType} + * or {@code Coverage} (sometimes seen as a kind of features), but this class - * actually puts no restriction on the kind of object associated to {@code GenericName}s; + * actually puts no restriction on the kind of object associated with {@code GenericName}s; * {@link DataStore} implementations are free to choose their internal object. * Those objects can be stored and fetched using the {@code String} representation of their name * as given by {@link GenericName#toString()}, or a shortened name when there is no ambiguity. diff --cc endorsed/src/org.apache.sis.storage/main/org/apache/sis/storage/aggregate/JoinFeatureSet.java index 49b14c55ae,40e119549e..f924326cfc --- a/endorsed/src/org.apache.sis.storage/main/org/apache/sis/storage/aggregate/JoinFeatureSet.java +++ b/endorsed/src/org.apache.sis.storage/main/org/apache/sis/storage/aggregate/JoinFeatureSet.java @@@ -362,10 -366,10 +362,10 @@@ public class JoinFeatureSet extends Agg * this is the right side. For inner join we arbitrarily take the left side in accordance with public * class javadoc, which suggests to put the most costly or larger set on the left side. * - * <p>Only one iteration will be performed on those features, contrarily to the other side where we may + * <p>Only one iteration will be performed on those features, contrary to the other side where we may * iterate over the same elements many times.</p> */ - private final Spliterator<Feature> mainIterator; + private final Spliterator<AbstractFeature> mainIterator; /** * A feature fetched from the {@link #mainIterator}. The join operation will match this feature with diff --cc endorsed/src/org.apache.sis.util/main/org/apache/sis/measure/Range.java index 9ac702612b,87d51cc48a..f3b61ea51f --- a/endorsed/src/org.apache.sis.util/main/org/apache/sis/measure/Range.java +++ b/endorsed/src/org.apache.sis.util/main/org/apache/sis/measure/Range.java @@@ -71,9 -71,10 +71,9 @@@ import org.apache.sis.util.collection.C * which may contain one or many {@code Range} instances. Consequently, this {@code Range} class * is closely related, but not identical, to the ISO 19123 definition or range.</p> * - * <p>Ranges are not necessarily numeric. Numeric and non-numeric ranges can be associated to + * <p>Ranges are not necessarily numeric. Numeric and non-numeric ranges can be associated with - * {@linkplain org.opengis.coverage.DiscreteCoverage discrete coverages}, while typically only - * numeric ranges can be associated with {@linkplain org.opengis.coverage.ContinuousCoverage - * continuous coverages}.</p> + * discrete coverages, while typically only - * numeric ranges can be associated to continuous coverages.</p> ++ * numeric ranges can be associated with continuous coverages.</p> * * <h2>Immutability and thread safety</h2> * This class and the {@link NumberRange} / {@link MeasurementRange} subclasses are immutable, diff --cc incubator/src/org.apache.sis.storage.json/main/org/apache/sis/storage/geojson/GeoJSONMapper.java index 3b9d8d5f85,ceee5174a0..b85bfce0de --- a/incubator/src/org.apache.sis.storage.json/main/org/apache/sis/storage/geojson/GeoJSONMapper.java +++ b/incubator/src/org.apache.sis.storage.json/main/org/apache/sis/storage/geojson/GeoJSONMapper.java @@@ -371,10 -373,10 +371,10 @@@ public final class GeoJSONMapper * of input data type. * * @implNote - * Primary geometry is determined using {@link #getDefaultGeometry(org.opengis.feature.FeatureType) }. + * Primary geometry is determined using {@link #getDefaultGeometry(DefaultFeatureType)}. * * @param type The data type to extract reference system from. - * @return The CRS associated to the default geometry of this data type, or + * @return The CRS associated with the default geometry of this data type, or * a null value if we cannot determine what is the primary geometry of the * data type. Note that a null value is also returned if a geometry property * is found, but no CRS characteristics is associated with it.
