This is an automated email from the ASF dual-hosted git repository.

desruisseaux pushed a commit to branch geoapi-3.1
in repository https://gitbox.apache.org/repos/asf/sis.git

commit 15f1d671c92622e6a68d64a94a5fb63c48ce457f
Merge: d44f96d192 57164cfbe3
Author: Martin Desruisseaux <martin.desruisse...@geomatys.com>
AuthorDate: Tue Apr 26 17:37:08 2022 +0200

    Merge branch 'geoapi-4.0' into geoapi-3.1

 .../java/org/apache/sis/console/AboutCommand.java  |   2 +-
 application/sis-javafx/pom.xml                     |   5 +
 .../main/java/org/apache/sis/gui/DataViewer.java   |  64 +-
 .../main/java/org/apache/sis/gui/RecentFiles.java  |   2 +-
 .../apache/sis/gui/coverage/BandRangeTable.java    |   5 +-
 .../apache/sis/gui/coverage/CoverageCanvas.java    |  35 +-
 .../apache/sis/gui/coverage/CoverageExplorer.java  |   2 +-
 .../org/apache/sis/gui/coverage/GridViewSkin.java  | 127 +++-
 .../org/apache/sis/gui/coverage/ImageRequest.java  |   2 +-
 .../apache/sis/gui/coverage/IsolineRenderer.java   |   4 +-
 .../sis/gui/coverage/StyledRenderingData.java      |   2 +-
 .../org/apache/sis/gui/dataset/DataWindow.java     |   8 +-
 .../org/apache/sis/gui/dataset/ExpandableList.java |   2 +-
 .../org/apache/sis/gui/dataset/FeatureList.java    |   2 +-
 .../org/apache/sis/gui/dataset/ResourceTree.java   |   4 +-
 .../org/apache/sis/gui/dataset/SelectedData.java   |  11 +-
 .../org/apache/sis/gui/dataset/WindowManager.java  |  13 +-
 .../java/org/apache/sis/gui/map/MapCanvas.java     |   7 +-
 .../java/org/apache/sis/gui/map/MapCanvasAWT.java  |   2 +-
 .../org/apache/sis/gui/map/OperationFinder.java    |   2 +-
 .../java/org/apache/sis/gui/map/StatusBar.java     |   3 +-
 .../apache/sis/gui/referencing/AuthorityCodes.java |   2 +-
 .../org/apache/sis/internal/gui/MouseDrags.java    |  55 ++
 .../org/apache/sis/internal/gui/RecentChoices.java |  30 +-
 .../org/apache/sis/internal/gui/Resources.java     |  12 +-
 .../apache/sis/internal/gui/Resources.properties   |   2 +
 .../sis/internal/gui/Resources_fr.properties       |   2 +
 .../apache/sis/internal/gui/control/ColorCell.java |   2 +-
 .../apache/sis/internal/gui/io/FileAccessView.java |  20 +-
 .../org/apache/sis/internal/doclet/Rewriter.java   |   2 +-
 .../sis/util/resources/ResourceCompilerMojo.java   |   4 +-
 .../java/org/apache/sis/coverage/CategoryList.java |   2 +-
 .../org/apache/sis/coverage/SampleDimension.java   |  50 +-
 .../main/java/org/apache/sis/coverage/ToNaN.java   |   2 +-
 .../org/apache/sis/coverage/grid/GridCoverage.java |   4 +-
 .../apache/sis/coverage/grid/GridCoverage2D.java   |   7 +-
 .../sis/coverage/grid/GridCoverageBuilder.java     |   8 +-
 .../apache/sis/coverage/grid/GridDerivation.java   |   6 +-
 .../org/apache/sis/coverage/grid/GridExtent.java   |  41 +-
 .../org/apache/sis/coverage/grid/GridGeometry.java |  10 +-
 .../apache/sis/coverage/grid/ImageRenderer.java    |   3 +-
 .../apache/sis/feature/CharacteristicTypeMap.java  |   2 +-
 .../apache/sis/feature/DefaultAssociationRole.java |   4 +-
 .../org/apache/sis/feature/DefaultFeatureType.java |   4 +-
 .../java/org/apache/sis/feature/FeatureFormat.java |   2 +-
 .../main/java/org/apache/sis/feature/Features.java |   4 +-
 .../org/apache/sis/feature/NamedFeatureType.java   |   2 +-
 .../apache/sis/feature/StringJoinOperation.java    |   2 +-
 .../java/org/apache/sis/image/BandSelectImage.java |  10 +-
 .../java/org/apache/sis/image/ComputedImage.java   |   4 +-
 .../java/org/apache/sis/image/ComputedTiles.java   |   2 +-
 .../main/java/org/apache/sis/image/DataType.java   |  55 +-
 .../java/org/apache/sis/image/ImageCombiner.java   |  51 +-
 .../java/org/apache/sis/image/ImageProcessor.java  |  23 +-
 .../java/org/apache/sis/image/PixelIterator.java   |  18 +-
 .../java/org/apache/sis/image/RecoloredImage.java  |  97 ++-
 .../org/apache/sis/image/StatisticsCalculator.java |   2 +-
 .../main/java/org/apache/sis/image/Transferer.java |   2 +-
 .../java/org/apache/sis/image/Visualization.java   |  20 +-
 .../org/apache/sis/index/tree/NodeIterator.java    |   4 +-
 .../sis/internal/coverage/CoverageCombiner.java    | 307 ++++++++
 .../internal/coverage/j2d/ColorModelFactory.java   | 110 ++-
 .../sis/internal/coverage/j2d/Colorizer.java       |  86 ++-
 .../sis/internal/coverage/j2d/ColorsForRange.java  |  61 +-
 .../sis/internal/coverage/j2d/ImageUtilities.java  |  17 +-
 .../sis/internal/coverage/j2d/TileOpExecutor.java  |   4 +-
 .../apache/sis/internal/feature/GeometryType.java  |   2 +-
 .../sis/internal/feature/GeometryWrapper.java      |   2 +-
 .../org/apache/sis/internal/feature/Resources.java |   7 +-
 .../sis/internal/feature/Resources.properties      |   1 +
 .../sis/internal/feature/Resources_fr.properties   |   1 +
 .../internal/feature/SpatialOperationContext.java  |   2 +-
 .../sis/internal/feature/j2d/PathBuilder.java      |   2 +-
 .../apache/sis/internal/feature/j2d/Polyline.java  |   2 +-
 .../internal/feature/jts/PathIteratorAdapter.java  |   4 +-
 .../sis/internal/filter/FunctionRegister.java      |   2 +-
 .../internal/processing/image/IsolineTracer.java   |   4 +-
 .../sis/internal/processing/image/Isolines.java    |   2 +-
 .../apache/sis/coverage/SampleDimensionTest.java   |   4 +-
 .../apache/sis/coverage/grid/GridExtentTest.java   |  10 +
 .../apache/sis/feature/FeatureOperationsTest.java  |   2 +-
 .../feature/builder/AttributeTypeBuilderTest.java  |   2 +-
 .../builder/CharacteristicTypeBuilderTest.java     |   2 +-
 .../java/org/apache/sis/image/DataTypeTest.java    |  25 +-
 .../sis/internal/coverage/j2d/ColorizerTest.java   |   4 +-
 .../internal/coverage/j2d/ImageUtilitiesTest.java  |   8 +-
 .../java/org/apache/sis/internal/jaxb/Context.java |   4 +-
 .../apache/sis/internal/jaxb/TypeRegistration.java |   2 +-
 .../sis/internal/jaxb/gco/GO_CharacterString.java  |   2 +-
 .../apache/sis/internal/jaxb/gco/GO_DateTime.java  |   4 +-
 .../internal/jaxb/gco/ObjectIdentification.html    |   2 +-
 .../apache/sis/internal/jaxb/gco/PropertyType.java |   4 +-
 .../metadata/replace/ReferenceSystemMetadata.java  |   2 +-
 .../apache/sis/internal/metadata/Identifiers.java  |  20 +-
 .../sis/internal/metadata/MetadataUtilities.java   |   6 +-
 .../apache/sis/internal/metadata/Resources.java    |   2 +-
 .../apache/sis/internal/metadata/package-info.java |   2 +-
 .../sis/internal/metadata/sql/SQLUtilities.java    |   2 +-
 .../sis/internal/metadata/sql/ScriptRunner.java    |   2 +-
 .../org/apache/sis/metadata/MetadataStandard.java  |   4 +-
 .../org/apache/sis/metadata/MetadataVisitor.java   |   2 +-
 .../main/java/org/apache/sis/metadata/Pruner.java  |   2 +-
 .../org/apache/sis/metadata/TreeNodeChildren.java  |   2 +-
 .../org/apache/sis/metadata/iso/ISOMetadata.java   |   2 +-
 .../sis/metadata/iso/citation/DefaultContact.java  |   2 +-
 .../iso/extent/DefaultGeographicBoundingBox.java   |  12 +-
 .../org/apache/sis/metadata/sql/Dispatcher.java    |  19 +-
 .../sis/metadata/sql/IdentifierGenerator.java      |   2 +-
 .../apache/sis/metadata/sql/MetadataSource.java    | 116 ++-
 .../apache/sis/metadata/sql/TableHierarchy.java    |   4 +
 .../main/java/org/apache/sis/xml/Transformer.java  |   4 +-
 .../org/apache/sis/xml/TransformingReader.java     |   2 +-
 .../org/apache/sis/xml/TransformingWriter.java     |   4 +-
 .../org/apache/sis/metadata/sql/Contents.sql       |  18 +-
 .../sis/metadata/sql/MetadataFallbackVerifier.java |   2 +-
 .../java/org/apache/sis/util/iso/NamesTest.java    |   2 +-
 .../sis/internal/map/coverage/RenderingData.java   |   2 +-
 .../main/java/org/apache/sis/portrayal/Canvas.java |   8 +-
 .../MultiResolutionCoverageLoaderTest.java         |   4 +-
 .../apache/sis/internal/gazetteer/Resources.java   |   2 +-
 .../gazetteer/MilitaryGridReferenceSystem.java     |   4 +-
 .../sis/geometry/AbstractDirectPosition.java       |   2 +-
 .../org/apache/sis/geometry/AbstractEnvelope.java  |   2 +-
 .../org/apache/sis/geometry/ArrayEnvelope.java     |   2 +-
 .../org/apache/sis/geometry/CoordinateFormat.java  |  12 +-
 .../org/apache/sis/geometry/DirectPosition2D.java  |   2 +-
 .../java/org/apache/sis/geometry/Envelopes.java    |   2 +-
 .../apache/sis/geometry/GeneralDirectPosition.java |   2 +-
 .../org/apache/sis/geometry/GeneralEnvelope.java   |   5 +-
 .../referencing/CC_GeneralOperationParameter.java  |  18 +-
 .../jaxb/referencing/CC_OperationMethod.java       |   8 +-
 .../internal/referencing/CoordinateOperations.java |   4 +-
 .../sis/internal/referencing/ExtentSelector.java   |   4 +-
 .../referencing/PositionalAccuracyConstant.java    |   2 +-
 .../apache/sis/internal/referencing/Resources.java |   2 +-
 .../sis/internal/referencing/WKTKeywords.java      |   2 +-
 .../sis/internal/referencing/j2d/AffineMatrix.java |   3 +-
 .../referencing/j2d/AffineTransform2D.java         |  36 +-
 .../referencing/j2d/ImmutableAffineTransform.java  |  14 +-
 .../referencing/j2d/ParameterizedAffine.java       |   2 +-
 .../internal/referencing/j2d/TileOrganizer.java    |   2 +-
 .../referencing/provider/AbstractProvider.java     |   2 +-
 .../provider/MolodenskyInterpolation.java          |   2 +-
 .../java/org/apache/sis/io/wkt/AbstractParser.java |   2 +-
 .../java/org/apache/sis/io/wkt/Convention.java     |   2 +-
 .../main/java/org/apache/sis/io/wkt/Element.java   |   6 +-
 .../main/java/org/apache/sis/io/wkt/Formatter.java |  12 +-
 .../apache/sis/io/wkt/GeodeticObjectParser.java    |  24 +-
 .../org/apache/sis/io/wkt/MathTransformParser.java |   2 +-
 .../java/org/apache/sis/io/wkt/StoredTree.java     |   4 +-
 .../java/org/apache/sis/io/wkt/WKTDictionary.java  |   4 +-
 .../sis/parameter/DefaultParameterDescriptor.java  |   2 +-
 .../sis/parameter/DefaultParameterValue.java       |   2 +-
 .../java/org/apache/sis/parameter/Parameters.java  |   6 +-
 .../sis/referencing/AbstractIdentifiedObject.java  |   4 +-
 .../java/org/apache/sis/referencing/Builder.java   |   8 +-
 .../main/java/org/apache/sis/referencing/CRS.java  |   2 +-
 .../sis/referencing/GeodesicsOnEllipsoid.java      |   2 +-
 .../apache/sis/referencing/GeodeticCalculator.java |   6 +-
 .../sis/referencing/ImmutableIdentifier.java       |   2 +-
 .../apache/sis/referencing/NamedIdentifier.java    |   2 +-
 .../sis/referencing/crs/AbstractDerivedCRS.java    |  15 +-
 .../sis/referencing/crs/DefaultDerivedCRS.java     |   6 +-
 .../sis/referencing/crs/DefaultProjectedCRS.java   |   2 +-
 .../org/apache/sis/referencing/cs/AbstractCS.java  |   2 +-
 .../sis/referencing/cs/CoordinateSystems.java      |   6 +-
 .../cs/DefaultCoordinateSystemAxis.java            |   2 +-
 .../factory/ConcurrentAuthorityFactory.java        |   2 +-
 .../factory/GeodeticAuthorityFactory.java          |   2 +-
 .../referencing/factory/IdentifiedObjectSet.java   |   2 +-
 .../operation/AbstractSingleOperation.java         |   6 +-
 .../operation/CoordinateOperationRegistry.java     |   6 +-
 .../referencing/operation/DefaultConversion.java   |   2 +-
 .../operation/builder/LinearTransformBuilder.java  |   4 +-
 .../operation/projection/AlbersEqualArea.java      |   2 +-
 .../operation/projection/CassiniSoldner.java       |   2 +-
 .../operation/projection/CylindricalEqualArea.java |   2 +-
 .../projection/LambertConicConformal.java          |   2 +-
 .../referencing/operation/projection/Mercator.java |   4 +-
 .../projection/ModifiedAzimuthalEquidistant.java   |   2 +-
 .../operation/projection/NormalizedProjection.java |   6 +-
 .../operation/projection/ObliqueMercator.java      |   2 +-
 .../operation/projection/ObliqueStereographic.java |   2 +-
 .../operation/projection/Orthographic.java         |   2 +-
 .../operation/projection/PolarStereographic.java   |   2 +-
 .../operation/projection/Polyconic.java            |   2 +-
 .../operation/projection/Sinusoidal.java           |   2 +-
 .../operation/projection/TransverseMercator.java   |   2 +-
 .../operation/transform/AbstractMathTransform.java |  12 +-
 .../transform/AbstractMathTransform2D.java         |   4 +-
 .../operation/transform/ConcatenatedTransform.java |   4 +-
 .../operation/transform/ContextualParameters.java  |   2 +-
 .../transform/CoordinateSystemTransform.java       |   2 +-
 .../transform/InterpolatedGeocentricTransform.java |   2 +-
 .../operation/transform/MathTransforms.java        |   2 +-
 .../sis/io/wkt/GeodeticObjectParserTest.java       |  10 +-
 .../factory/ConcurrentAuthorityFactoryTest.java    |   2 +-
 .../transform/AbstractMathTransformTest.java       |   2 +-
 .../operation/transform/MathTransformTestCase.java |   4 +-
 .../sis/internal/system/DelayedRunnable.java       |   2 +-
 .../org/apache/sis/internal/system/Fallback.java   |   2 +-
 .../sis/internal/system/OptionalDependency.java    |   2 +-
 .../apache/sis/internal/util/AbstractIterator.java |   2 +-
 .../apache/sis/internal/util/CollectionsExt.java   |   2 +-
 .../apache/sis/internal/util/DefinitionURI.java    |   2 +-
 .../org/apache/sis/internal/util/DoubleDouble.java |   2 +-
 .../sis/internal/util/ListOfUnknownSize.java       |   4 +-
 .../org/apache/sis/internal/util/Numerics.java     |  49 ++
 .../main/java/org/apache/sis/io/LineAppender.java  |   2 +-
 .../java/org/apache/sis/math/FunctionProperty.java |   2 +-
 .../java/org/apache/sis/math/MathFunctions.java    |   2 +-
 .../main/java/org/apache/sis/math/Statistics.java  |  68 +-
 .../src/main/java/org/apache/sis/math/Vector.java  |   2 +-
 .../main/java/org/apache/sis/measure/Angle.java    |   2 +-
 .../java/org/apache/sis/measure/AngleFormat.java   |   2 +-
 .../sis/measure/FormattedCharacterIterator.java    |   2 +-
 .../main/java/org/apache/sis/measure/Prefixes.java |   2 +-
 .../main/java/org/apache/sis/measure/Scalar.java   |  17 +-
 .../java/org/apache/sis/measure/SystemUnit.java    |   2 +-
 .../java/org/apache/sis/measure/UnitFormat.java    |   4 +-
 .../java/org/apache/sis/measure/UnitRegistry.java  |  14 +-
 .../java/org/apache/sis/measure/UnitServices.java  |   1 +
 .../main/java/org/apache/sis/measure/Units.java    |  80 +-
 .../java/org/apache/sis/measure/package-info.java  |   1 +
 .../main/java/org/apache/sis/setup/OptionKey.java  |   4 +-
 .../main/java/org/apache/sis/util/ArraysExt.java   |  20 +-
 .../java/org/apache/sis/util/CharSequences.java    |   6 +-
 .../src/main/java/org/apache/sis/util/Locales.java |   4 +-
 .../main/java/org/apache/sis/util/Utilities.java   |   4 +-
 .../java/org/apache/sis/util/collection/Cache.java |   6 +-
 .../org/apache/sis/util/collection/RangeSet.java   |   2 +-
 .../sis/util/collection/TreeTableFormat.java       |   2 +-
 .../sis/util/collection/WeakValueHashMap.java      |   2 +-
 .../org/apache/sis/util/logging/LoggerAdapter.java |   2 +-
 .../apache/sis/util/logging/PerformanceLevel.java  |   4 +-
 .../java/org/apache/sis/util/resources/Errors.java |  17 +-
 .../apache/sis/util/resources/Errors.properties    |   5 +-
 .../apache/sis/util/resources/Errors_fr.properties |   5 +-
 .../sis/util/resources/IndexedResourceBundle.java  |   6 +-
 .../org/apache/sis/util/resources/Messages.java    |   7 +-
 .../apache/sis/util/resources/Messages.properties  |   1 +
 .../sis/util/resources/Messages_fr.properties      |   1 +
 .../org/apache/sis/util/resources/Vocabulary.java  |   2 +-
 .../org/apache/sis/measure/UnitNames.properties    |   2 +
 .../org/apache/sis/measure/UnitNames_fr.properties |   3 +-
 .../org/apache/sis/internal/util/NumericsTest.java |  22 +
 .../org/apache/sis/math/DecimalFunctionsTest.java  |   2 +-
 .../java/org/apache/sis/math/StatisticsTest.java   |  18 +-
 .../org/apache/sis/measure/UnitFormatTest.java     |   5 +-
 .../java/org/apache/sis/measure/UnitsTest.java     |  87 ++-
 ide-project/NetBeans/build.xml                     |   7 +
 ide-project/NetBeans/nbproject/project.properties  |   4 +-
 .../org/apache/sis/storage/landsat/BandGroup.java  |  13 +-
 .../apache/sis/storage/landsat/LandsatStore.java   |   3 +
 .../sis/storage/landsat/LandsatStoreProvider.java  |   3 +-
 .../apache/sis/storage/landsat/MetadataReader.java |   6 +-
 .../storage/landsat/doc-files/MetadataMapping.html |   2 +-
 .../apache/sis/storage/landsat/package-info.java   |   2 +-
 .../sis/storage/landsat/MetadataReaderTest.java    |  29 +-
 .../org/apache/sis/internal/geotiff/Resources.java |   2 +-
 .../sis/internal/geotiff/SchemaModifier.java       |   5 +-
 .../org/apache/sis/storage/geotiff/CRSBuilder.java |   8 +-
 .../org/apache/sis/storage/geotiff/DataCube.java   |  24 +
 .../org/apache/sis/storage/geotiff/DataSubset.java |  10 +-
 .../apache/sis/storage/geotiff/GeoTiffStore.java   |  26 +-
 .../sis/storage/geotiff/GeoTiffStoreProvider.java  |  11 +-
 .../sis/storage/geotiff/GridGeometryBuilder.java   |   7 +-
 .../sis/storage/geotiff/ImageFileDirectory.java    |  52 +-
 .../sis/storage/geotiff/ImageMetadataBuilder.java  |   5 +-
 .../sis/storage/geotiff/MultiResolutionImage.java  |  28 +-
 .../org/apache/sis/storage/geotiff/Reader.java     |   4 +-
 .../internal/storage/inflater/CCITTRLETest.java    |   2 +-
 .../apache/sis/storage/geotiff/GeoKeysTest.java    |   4 +-
 .../sis/storage/geotiff/XMLMetadataTest.java       |   4 +-
 .../java/org/apache/sis/internal/netcdf/Axis.java  |   2 +-
 .../org/apache/sis/internal/netcdf/CRSBuilder.java |   2 +-
 .../org/apache/sis/internal/netcdf/DataType.java   |   2 +-
 .../sis/internal/netcdf/DiscreteSampling.java      |   4 +-
 .../org/apache/sis/internal/netcdf/FeatureSet.java |   4 +-
 .../apache/sis/internal/netcdf/NamedElement.java   |   4 +-
 .../apache/sis/internal/netcdf/RasterResource.java |  29 +-
 .../org/apache/sis/internal/netcdf/Resources.java  |   2 +-
 .../org/apache/sis/internal/netcdf/Variable.java   |   2 +-
 .../sis/internal/netcdf/ucar/LogAdapter.java       |  13 +-
 .../apache/sis/storage/netcdf/MetadataReader.java  |  14 +-
 .../org/apache/sis/storage/netcdf/NetcdfStore.java |   3 +
 .../sis/storage/netcdf/NetcdfStoreProvider.java    |  11 +-
 .../org/apache/sis/internal/netcdf/TestCase.java   |  28 +-
 .../internal/netcdf/impl/ChannelDecoderTest.java   |   3 +-
 .../sis/storage/netcdf/MetadataReaderTest.java     |   2 +
 .../storage/netcdf/NetcdfStoreProviderTest.java    |   5 +-
 .../sis/internal/shapefile/jdbc/AbstractJDBC.java  |   2 +-
 storage/sis-sqlstore/pom.xml                       |   2 +-
 .../apache/sis/internal/sql/feature/Analyzer.java  |   2 +-
 .../apache/sis/internal/sql/feature/Column.java    |  73 +-
 .../apache/sis/internal/sql/feature/Database.java  |  53 +-
 .../sis/internal/sql/feature/FeatureAdapter.java   |   2 +-
 .../sis/internal/sql/feature/FeatureAnalyzer.java  |   2 +-
 .../sis/internal/sql/feature/FeatureIterator.java  |   2 +-
 .../sis/internal/sql/feature/InfoStatements.java   |  17 +-
 .../apache/sis/internal/sql/feature/Relation.java  |   2 +-
 .../apache/sis/internal/sql/feature/Resources.java |   2 +-
 .../sis/internal/sql/feature/SelectionClause.java  |   2 +-
 .../org/apache/sis/internal/sql/feature/Table.java |   8 +-
 .../sis/internal/sql/feature/ValueGetter.java      |  81 +-
 .../sis/internal/sql/postgis/ExtentEstimator.java  |   8 +-
 .../sis/internal/sql/postgis/ObjectGetter.java     |  76 ++
 .../apache/sis/internal/sql/postgis/Postgres.java  |  35 +-
 .../java/org/apache/sis/storage/sql/SQLStore.java  |   5 +-
 .../apache/sis/storage/sql/SQLStoreProvider.java   |   2 +-
 .../sis/internal/storage/AbstractGridResource.java | 578 --------------
 .../sis/internal/storage/AggregatedFeatureSet.java |  10 +-
 .../org/apache/sis/internal/storage/CodeType.java  |   2 +-
 .../internal/storage/ConcatenatedFeatureSet.java   |   7 +-
 .../internal/storage/DocumentedStoreProvider.java  |  45 +-
 .../sis/internal/storage/MemoryFeatureSet.java     |   5 +-
 .../sis/internal/storage/MemoryGridResource.java   |   5 +-
 .../sis/internal/storage/MetadataBuilder.java      | 148 +++-
 .../apache/sis/internal/storage/PRJDataStore.java  | 511 +++++++++++++
 .../apache/sis/internal/storage/RangeArgument.java | 386 ++++++++++
 .../sis/internal/storage/ResourceOnFileSystem.java |   6 +-
 .../org/apache/sis/internal/storage/Resources.java |  47 +-
 .../sis/internal/storage/Resources.properties      |   9 +
 .../sis/internal/storage/Resources_fr.properties   |   9 +
 .../sis/internal/storage/StoreUtilities.java       |  22 +-
 .../sis/internal/storage/TiledGridCoverage.java    |  10 +-
 .../sis/internal/storage/TiledGridResource.java    |   9 +-
 .../apache/sis/internal/storage/URIDataStore.java  | 161 ++--
 .../internal/storage/WritableResourceSupport.java  | 236 ++++++
 .../sis/internal/storage/csv/FeatureIterator.java  |   6 +-
 .../storage/csv/MovingFeatureIterator.java         |   2 +-
 .../org/apache/sis/internal/storage/csv/Store.java |   5 +-
 .../sis/internal/storage/csv/StoreProvider.java    |  12 +-
 .../sis/internal/storage/esri/AsciiGridStore.java  | 570 ++++++++++++++
 .../storage/esri/AsciiGridStoreProvider.java       | 139 ++++
 .../sis/internal/storage/esri/CharactersView.java  | 239 ++++++
 .../sis/internal/storage/esri/RasterStore.java     | 520 +++++++++++++
 .../sis/internal/storage/esri/RawRasterLayout.java |  35 +-
 .../sis/internal/storage/esri/RawRasterReader.java | 264 +++++++
 .../sis/internal/storage/esri/RawRasterStore.java  | 544 ++++++++++++++
 .../storage/esri/RawRasterStoreProvider.java       | 115 +++
 .../sis/internal/storage/esri/WritableStore.java   | 309 ++++++++
 .../sis/internal/storage/esri/package-info.java    |  57 ++
 .../apache/sis/internal/storage/folder/Store.java  |   5 +-
 .../sis/internal/storage/folder/StoreProvider.java |   4 +-
 .../sis/internal/storage/image/FormatFilter.java   | 246 ++++++
 .../internal/storage/image/WarningListener.java    |  70 ++
 .../internal/storage/image/WorldFileResource.java  | 363 +++++++++
 .../sis/internal/storage/image/WorldFileStore.java | 829 +++++++++++++++++++++
 .../storage/image/WorldFileStoreProvider.java      | 134 ++++
 .../internal/storage/image/WritableResource.java   |  77 ++
 .../sis/internal/storage/image/WritableStore.java  | 535 +++++++++++++
 .../sis/internal/storage/image/package-info.java   |  50 ++
 .../sis/internal/storage/io/ChannelDataInput.java  |  34 +-
 .../sis/internal/storage/io/ChannelDataOutput.java |   4 +-
 .../sis/internal/storage/io/ChannelFactory.java    | 126 +++-
 .../storage/io/ChannelImageInputStream.java        |  17 +-
 .../storage/io/ChannelImageOutputStream.java       |   2 +-
 .../internal/storage/io/HyperRectangleReader.java  |  22 +-
 .../sis/internal/storage/io/IOUtilities.java       |  40 +-
 .../org/apache/sis/internal/storage/io/Region.java |  22 +-
 .../internal/storage/io/RewindableLineReader.java  |   2 +-
 .../org/apache/sis/internal/storage/wkt/Store.java |  33 +-
 .../sis/internal/storage/wkt/StoreFormat.java      |  14 +-
 .../sis/internal/storage/wkt/StoreProvider.java    |  22 +-
 .../sis/internal/storage/wkt/package-info.java     |   2 +-
 .../sis/internal/storage/xml/AbstractProvider.java |  13 +-
 .../org/apache/sis/internal/storage/xml/Store.java |   3 +-
 .../sis/internal/storage/xml/StoreProvider.java    |   4 +-
 .../{internal => }/storage/AbstractFeatureSet.java |  49 +-
 .../sis/storage/AbstractGridCoverageResource.java  | 229 ++++++
 .../{internal => }/storage/AbstractResource.java   | 223 +++---
 .../org/apache/sis/storage/CoverageSubset.java     |   9 +-
 .../java/org/apache/sis/storage/DataOptionKey.java |  19 +-
 .../java/org/apache/sis/storage/DataStore.java     |  10 +-
 .../org/apache/sis/storage/DataStoreException.java |   4 +-
 .../org/apache/sis/storage/DataStoreProvider.java  |  10 +-
 .../java/org/apache/sis/storage/FeatureQuery.java  |   2 +-
 .../java/org/apache/sis/storage/FeatureSubset.java |   5 +-
 ...ion.java => IncompatibleResourceException.java} |  36 +-
 .../sis/storage/ReadOnlyStorageException.java      |   2 +-
 .../main/java/org/apache/sis/storage/Resource.java |   6 +-
 ...on.java => ResourceAlreadyExistsException.java} |  37 +-
 .../org/apache/sis/storage/StorageConnector.java   | 187 ++++-
 .../sis/storage/WritableGridCoverageResource.java  |  60 +-
 .../apache/sis/storage/event/StoreListeners.java   | 217 ++++--
 .../java/org/apache/sis/storage/tiling/Tile.java   |  93 +++
 .../org/apache/sis/storage/tiling/TileMatrix.java  | 166 +++++
 .../apache/sis/storage/tiling/TileMatrixSet.java   |  91 +++
 .../org/apache/sis/storage/tiling/TileStatus.java  |  69 ++
 .../apache/sis/storage/tiling/TiledResource.java   |  52 ++
 .../sis/storage/tiling/WritableTileMatrix.java     |  61 ++
 .../sis/storage/tiling/WritableTileMatrixSet.java  |  84 +++
 .../sis/storage/tiling/WritableTiledResource.java  |  76 ++
 .../apache/sis/storage/tiling/package-info.java    |  75 ++
 .../org.apache.sis.storage.DataStoreProvider       |   5 +-
 .../internal/storage/MemoryGridResourceTest.java   |   2 +-
 .../sis/internal/storage/MetadataBuilderTest.java  |   4 +-
 ...ridResourceTest.java => RangeArgumentTest.java} |  29 +-
 .../internal/storage/esri/AsciiGridStoreTest.java  | 133 ++++
 .../internal/storage/esri/BILConsistencyTest.java  |  79 ++
 .../internal/storage/esri/BIPConsistencyTest.java  |  79 ++
 .../internal/storage/esri/BSQConsistencyTest.java  |  79 ++
 .../internal/storage/esri/WritableStoreTest.java   | 176 +++++
 .../storage/image/SelfConsistencyTest.java         |  83 +++
 .../internal/storage/image/WorldFileStoreTest.java | 167 +++++
 .../sis/internal/storage/io/IOUtilitiesTest.java   |  14 +-
 .../internal/storage/wkt/StoreProviderTest.java    |   2 +-
 .../java/org/apache/sis/storage/DataStoreMock.java |   2 +-
 .../org/apache/sis/storage/GridResourceMock.java   |   3 +-
 .../apache/sis/storage/StorageConnectorTest.java   |   2 +-
 .../sis/storage/event/StoreListenersTest.java      |  24 +-
 .../sis/test/storage/CoverageReadConsistency.java  |   6 +-
 .../apache/sis/test/storage/SubsampledImage.java   | 109 ++-
 .../apache/sis/test/suite/StorageTestSuite.java    |   9 +-
 .../org/apache/sis/internal/storage/esri/BIL.hdr   |   9 +
 .../org/apache/sis/internal/storage/esri/BIL.raw   | Bin 0 -> 243 bytes
 .../org/apache/sis/internal/storage/esri/BIP.hdr   |  14 +
 .../org/apache/sis/internal/storage/esri/BIP.raw   | Bin 0 -> 243 bytes
 .../org/apache/sis/internal/storage/esri/BIP.stx   |   7 +
 .../org/apache/sis/internal/storage/esri/BSQ.hdr   |  13 +
 .../org/apache/sis/internal/storage/esri/BSQ.raw   | Bin 0 -> 243 bytes
 .../org/apache/sis/internal/storage/esri/grid.asc  |  34 +
 .../org/apache/sis/internal/storage/esri/grid.clr  |  14 +
 .../org/apache/sis/internal/storage/esri/grid.prj  |   9 +
 .../apache/sis/internal/storage/image/README.md    |  11 +
 .../apache/sis/internal/storage/image/gradient.pgw |   6 +
 .../apache/sis/internal/storage/image/gradient.png | Bin 0 -> 176 bytes
 .../apache/sis/internal/storage/image/gradient.prj |   8 +
 .../apache/sis/internal/storage/gpx/Reader.java    |   4 +-
 .../org/apache/sis/internal/storage/gpx/Store.java |   1 +
 .../sis/internal/storage/gpx/StoreProvider.java    |   9 +-
 .../org/apache/sis/internal/storage/gpx/Types.java |   2 +-
 .../internal/storage/xml/stream/StaxDataStore.java |   2 +-
 .../storage/xml/stream/StaxStreamReader.java       |   4 +-
 435 files changed, 12177 insertions(+), 2002 deletions(-)

diff --cc 
core/sis-metadata/src/main/java/org/apache/sis/metadata/sql/Dispatcher.java
index 80e3c03e9e,63a15907e4..adb318d941
--- 
a/core/sis-metadata/src/main/java/org/apache/sis/metadata/sql/Dispatcher.java
+++ 
b/core/sis-metadata/src/main/java/org/apache/sis/metadata/sql/Dispatcher.java
@@@ -161,7 -157,6 +161,8 @@@ final class Dispatcher implements Invoc
                   */
                  Object value;
                  try {
 +                    method = supercede(method);
++                    if (method == null) return null;
                      value = 
fetchValue(source.getLookupInfo(method.getDeclaringClass()), method);
                  } catch (ReflectiveOperationException | SQLException | 
MetadataStoreException e) {
                      throw new BackingStoreException(error(method), e);
@@@ -321,17 -316,4 +322,25 @@@
      public String toString() {
          return toString(getClass());
      }
 +
 +    /**
 +     * If the given method is superceded by a new method, the new method.
 +     * This is a hack for transition from legacy ISO type to newer type:
 +     * {@code ResponsibleParty.getRole()} overriding {@code 
Responsibility.getRole()}
 +     * confuses this {@code Dispatcher} class. We need the method in the base 
interface.
 +     */
 +    private static Method supercede(Method method) throws 
NoSuchMethodException {
-         if (method.getDeclaringClass() == ResponsibleParty.class && 
"getRole".equals(method.getName())) {
-             method = Responsibility.class.getMethod("getRole");
++        if (method.getDeclaringClass() == ResponsibleParty.class) {
++            if ("getRole".equals(method.getName())) {
++                method = Responsibility.class.getMethod("getRole");
++            } else {
++                /*
++                 * `getIndividualName()`, `getOrganisationName()`, 
`getPositionName()` and
++                 * `getContactInfo()` has no direct equivalence in 
`Responsibility` class.
++                 */
++                return null;
++            }
 +        }
 +        return method;
 +    }
  }
diff --cc ide-project/NetBeans/nbproject/project.properties
index 6c1d641b10,bf87962543..7f32032e96
--- a/ide-project/NetBeans/nbproject/project.properties
+++ b/ide-project/NetBeans/nbproject/project.properties
@@@ -142,9 -149,7 +143,8 @@@ javac.processorpath=
      ${javac.classpath}
  javac.test.classpath=\
      ${javac.classpath}:\
 +    
${maven.repository}/org/opengis/geoapi-conformance/${geoapi.version}/geoapi-conformance-${geoapi.version}.jar:\
      
${maven.repository}/org/apache/derby/derby/${derby.version}/derby-${derby.version}.jar:\
-     
${maven.repository}/org/postgresql/postgresql/${postgresql.version}/postgresql-${postgresql.version}.jar:\
      
${maven.repository}/org/hsqldb/hsqldb/${hsqldb.version}/hsqldb-${hsqldb.version}.jar:\
      ${maven.repository}/com/h2database/h2/${h2.version}/h2-${h2.version}.jar:\
      
${maven.repository}/gov/nist/math/jama/${jama.version}/jama-${jama.version}.jar:\

Reply via email to