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:\