This is an automated email from the ASF dual-hosted git repository. desruisseaux pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/sis.git
commit f77cfeed912d47649036690f8d483771c5aaf54f Merge: 884973020b 29bfa755d5 Author: Martin Desruisseaux <martin.desruisse...@geomatys.com> AuthorDate: Tue Nov 22 11:02:57 2022 +0100 Merge branch 'geoapi-3.1'. Contains mostly minor documentation fixes, but repeated in a lot of files. .../src/main/artifact/conf/logging.properties | 2 +- .../main/java/org/apache/sis/console/Command.java | 2 +- .../org/apache/sis/console/CRSCommandTest.java | 2 +- .../main/java/org/apache/sis/gui/DataViewer.java | 2 +- .../apache/sis/gui/coverage/CoverageExplorer.java | 2 +- .../org/apache/sis/gui/coverage/GridRowSkin.java | 4 +- .../sis/gui/coverage/ImagePropertyExplorer.java | 6 +- .../org/apache/sis/gui/dataset/ExpandableList.java | 2 +- .../org/apache/sis/gui/dataset/FeatureLoader.java | 2 +- .../org/apache/sis/gui/dataset/ResourceCell.java | 2 +- .../org/apache/sis/gui/dataset/ResourceTree.java | 2 +- .../org/apache/sis/gui/dataset/WindowHandler.java | 2 +- .../org/apache/sis/gui/map/OperationFinder.java | 2 +- .../java/org/apache/sis/gui/map/StatusBar.java | 8 +-- .../org/apache/sis/gui/map/ValuesFormatter.java | 2 +- .../org/apache/sis/gui/map/ValuesUnderCursor.java | 2 +- .../java/org/apache/sis/gui/referencing/Utils.java | 2 +- .../apache/sis/internal/gui/DataStoreOpener.java | 6 +- .../org/apache/sis/internal/setup/Inflater.java | 2 +- .../java/org/apache/sis/openoffice/CalcAddins.java | 2 +- .../src/main/unopkg/build-instruction.html | 2 +- .../apache/sis/cloud/aws/s3/CachedByteChannel.java | 2 +- .../org/apache/sis/cloud/aws/s3/DerivedList.java | 2 +- .../java/org/apache/sis/cloud/aws/s3/KeyPath.java | 8 +-- .../apache/sis/internal/maven/JarCollector.java | 2 +- .../util/resources/IndexedResourceCompiler.java | 6 +- .../org/apache/sis/coverage/BandedCoverage.java | 6 +- .../java/org/apache/sis/coverage/CategoryList.java | 2 +- .../org/apache/sis/coverage/SampleDimension.java | 6 +- .../sis/coverage/grid/BufferedGridCoverage.java | 2 +- .../coverage/grid/CoordinateOperationFinder.java | 2 +- .../apache/sis/coverage/grid/DefaultEvaluator.java | 2 +- .../coverage/grid/FractionalGridCoordinates.java | 2 +- .../org/apache/sis/coverage/grid/GridCoverage.java | 2 +- .../apache/sis/coverage/grid/GridCoverage2D.java | 6 +- .../sis/coverage/grid/GridCoverageBuilder.java | 8 +-- .../sis/coverage/grid/GridCoverageProcessor.java | 2 +- .../apache/sis/coverage/grid/GridDerivation.java | 14 ++-- .../org/apache/sis/coverage/grid/GridExtent.java | 8 +-- .../org/apache/sis/coverage/grid/GridGeometry.java | 8 +-- .../apache/sis/coverage/grid/GridOrientation.java | 10 +-- .../apache/sis/coverage/grid/GridRoundingMode.java | 2 +- .../apache/sis/coverage/grid/ImageRenderer.java | 2 +- .../grid/IncompleteGridGeometryException.java | 2 +- .../sis/coverage/grid/ResampledGridCoverage.java | 6 +- .../apache/sis/coverage/grid/ReshapedImage.java | 2 +- .../apache/sis/feature/AbstractAssociation.java | 4 +- .../org/apache/sis/feature/AbstractAttribute.java | 8 +-- .../apache/sis/feature/AbstractIdentifiedType.java | 2 +- .../apache/sis/feature/CharacteristicTypeMap.java | 2 +- .../apache/sis/feature/DefaultAssociationRole.java | 2 +- .../apache/sis/feature/DefaultAttributeType.java | 6 +- .../org/apache/sis/feature/DefaultFeatureType.java | 10 +-- .../java/org/apache/sis/feature/DenseFeature.java | 10 +-- .../org/apache/sis/feature/EnvelopeOperation.java | 2 +- .../java/org/apache/sis/feature/FeatureFormat.java | 4 +- .../org/apache/sis/feature/FeatureOperations.java | 2 +- .../main/java/org/apache/sis/feature/Features.java | 2 +- .../java/org/apache/sis/feature/SparseFeature.java | 10 +-- .../java/org/apache/sis/feature/Validator.java | 6 +- .../java/org/apache/sis/feature/benchmarks.html | 2 +- .../sis/feature/builder/AttributeTypeBuilder.java | 2 +- .../feature/builder/CharacteristicTypeBuilder.java | 2 +- .../sis/feature/builder/FeatureTypeBuilder.java | 6 +- .../apache/sis/feature/builder/TypeBuilder.java | 2 +- .../java/org/apache/sis/feature/package-info.java | 2 +- .../org/apache/sis/filter/ComparisonFilter.java | 2 +- .../java/org/apache/sis/filter/Optimization.java | 2 +- .../src/main/java/org/apache/sis/filter/XPath.java | 2 +- .../java/org/apache/sis/image/AnnotatedImage.java | 6 +- .../java/org/apache/sis/image/BandSelectImage.java | 2 +- .../java/org/apache/sis/image/ComputedImage.java | 6 +- .../java/org/apache/sis/image/ComputedTiles.java | 4 +- .../java/org/apache/sis/image/ErrorHandler.java | 4 +- .../java/org/apache/sis/image/ImageCombiner.java | 2 +- .../java/org/apache/sis/image/ImageProcessor.java | 16 ++--- .../java/org/apache/sis/image/Interpolation.java | 2 +- .../java/org/apache/sis/image/PixelIterator.java | 12 ++-- .../java/org/apache/sis/image/PlanarImage.java | 4 +- .../java/org/apache/sis/image/ResampledImage.java | 6 +- .../java/org/apache/sis/image/ResamplingGrid.java | 4 +- .../main/java/org/apache/sis/image/TileCache.java | 4 +- .../java/org/apache/sis/image/Visualization.java | 2 +- .../apache/sis/image/WritablePixelIterator.java | 2 +- .../java/org/apache/sis/image/package-info.java | 2 +- .../org/apache/sis/index/tree/NodeIterator.java | 2 +- .../java/org/apache/sis/index/tree/PointTree.java | 4 +- .../internal/coverage/j2d/BatchComputedImage.java | 2 +- .../internal/coverage/j2d/ColorModelFactory.java | 4 +- .../sis/internal/coverage/j2d/ColorModelPatch.java | 2 +- .../sis/internal/coverage/j2d/Colorizer.java | 2 +- .../sis/internal/coverage/j2d/ImageUtilities.java | 4 +- .../sis/internal/coverage/j2d/RasterFactory.java | 4 +- .../internal/coverage/j2d/SampleModelFactory.java | 2 +- .../internal/coverage/j2d/ScaledColorModel.java | 2 +- .../apache/sis/internal/feature/Geometries.java | 2 +- .../sis/internal/feature/MovingFeatures.java | 2 +- .../internal/feature/SpatialOperationContext.java | 2 +- .../apache/sis/internal/feature/j2d/FlatShape.java | 2 +- .../sis/internal/feature/j2d/PathBuilder.java | 4 +- .../apache/sis/internal/feature/j2d/Polyline.java | 2 +- .../org/apache/sis/internal/feature/jts/JTS.java | 4 +- .../org/apache/sis/internal/filter/Visitor.java | 6 +- .../internal/processing/image/TiledProcess.java | 2 +- .../sis/internal/processing/isoline/Isolines.java | 2 +- .../processing/isoline/PolylineBuffer.java | 2 +- .../sis/internal/processing/isoline/Tracer.java | 4 +- .../sis/coverage/grid/GridCoverage2DTest.java | 2 +- .../coverage/grid/ResampledGridCoverageTest.java | 2 +- .../apache/sis/feature/AbstractFeatureTest.java | 2 +- .../apache/sis/feature/FeatureOperationsTest.java | 2 +- .../org/apache/sis/image/InterpolationTest.java | 2 +- .../org/apache/sis/image/LinearIteratorTest.java | 2 +- .../org/apache/sis/image/PixelIteratorTest.java | 2 +- .../sis/internal/jaxb/AdapterReplacement.java | 2 +- .../sis/internal/jaxb/IdentifierMapAdapter.java | 4 +- .../sis/internal/jaxb/PrimitiveTypeProperties.java | 2 +- .../sis/internal/jaxb/cat/CodeListAdapter.java | 4 +- .../apache/sis/internal/jaxb/cat/CodeListUID.java | 4 +- .../apache/sis/internal/jaxb/cat/EnumAdapter.java | 2 +- .../apache/sis/internal/jaxb/code/CI_RoleCode.java | 4 +- .../internal/jaxb/code/CI_TelephoneTypeCode.java | 4 +- .../internal/jaxb/code/DS_AssociationTypeCode.java | 4 +- .../internal/jaxb/code/DS_InitiativeTypeCode.java | 4 +- .../sis/internal/jaxb/gco/GO_CharacterString.java | 4 +- .../internal/jaxb/gco/ObjectIdentification.html | 4 +- .../sis/internal/jaxb/gco/ObjectReference.java | 2 +- .../apache/sis/internal/jaxb/gco/package-info.java | 2 +- .../sis/internal/jaxb/geometry/ObjectFactory.java | 4 +- .../sis/internal/jaxb/geometry/package-info.java | 2 +- .../apache/sis/internal/jaxb/gml/package-info.java | 2 +- .../sis/internal/jaxb/gts/TM_PeriodDuration.java | 6 +- .../sis/internal/jaxb/lan/LocaleAndCharset.java | 2 +- .../apache/sis/internal/jaxb/lan/OtherLocales.java | 2 +- .../apache/sis/internal/jaxb/lan/PT_FreeText.java | 2 +- .../apache/sis/internal/jaxb/lan/PT_Locale.java | 2 +- .../apache/sis/internal/jaxb/lan/TextGroup.java | 6 +- .../sis/internal/jaxb/metadata/CI_Citation.java | 4 +- .../internal/jaxb/metadata/CI_OnlineResource.java | 4 +- .../sis/internal/jaxb/metadata/MD_Identifier.java | 4 +- .../internal/jaxb/metadata/MD_KeywordClass.java | 4 +- .../sis/internal/jaxb/metadata/MD_Medium.java | 4 +- .../internal/jaxb/metadata/MD_Releasability.java | 4 +- .../sis/internal/jaxb/metadata/MD_Resolution.java | 4 +- .../sis/internal/jaxb/metadata/MD_Scope.java | 4 +- .../internal/jaxb/metadata/RS_ReferenceSystem.java | 6 +- .../jaxb/metadata/SV_OperationMetadata.java | 4 +- .../jaxb/metadata/replace/QualityParameter.java | 2 +- .../jaxb/metadata/replace/ServiceParameter.java | 2 +- .../jaxb/metadata/replace/package-info.java | 4 +- .../internal/metadata/ImplementationHelper.java | 5 ++ .../org/apache/sis/internal/metadata/Merger.java | 2 +- .../sis/internal/metadata/MetadataTypes.java | 2 +- .../apache/sis/internal/metadata/NameMeaning.java | 2 +- .../sis/internal/metadata/sql/Initializer.java | 2 +- .../apache/sis/internal/xml/LegacyNamespaces.java | 4 +- .../org/apache/sis/metadata/AbstractMetadata.java | 6 +- .../org/apache/sis/metadata/MetadataFormat.java | 2 +- .../org/apache/sis/metadata/MetadataStandard.java | 26 ++++---- .../org/apache/sis/metadata/MetadataVisitor.java | 4 +- .../apache/sis/metadata/ModifiableMetadata.java | 6 +- .../org/apache/sis/metadata/PropertyAccessor.java | 22 +++--- .../apache/sis/metadata/PropertyComparator.java | 4 +- .../org/apache/sis/metadata/TitleProperty.java | 4 +- .../java/org/apache/sis/metadata/TreeNode.java | 6 +- .../org/apache/sis/metadata/TreeNodeChildren.java | 4 +- .../iso/DefaultApplicationSchemaInformation.java | 4 +- .../iso/DefaultExtendedElementInformation.java | 4 +- .../apache/sis/metadata/iso/DefaultIdentifier.java | 4 +- .../apache/sis/metadata/iso/DefaultMetadata.java | 10 +-- .../iso/DefaultMetadataExtensionInformation.java | 4 +- .../sis/metadata/iso/DefaultMetadataScope.java | 2 +- .../iso/DefaultPortrayalCatalogueReference.java | 4 +- .../acquisition/DefaultAcquisitionInformation.java | 4 +- .../acquisition/DefaultEnvironmentalRecord.java | 4 +- .../sis/metadata/iso/acquisition/DefaultEvent.java | 4 +- .../iso/acquisition/DefaultInstrument.java | 4 +- .../metadata/iso/acquisition/DefaultObjective.java | 4 +- .../metadata/iso/acquisition/DefaultOperation.java | 4 +- .../sis/metadata/iso/acquisition/DefaultPlan.java | 4 +- .../metadata/iso/acquisition/DefaultPlatform.java | 4 +- .../iso/acquisition/DefaultPlatformPass.java | 4 +- .../iso/acquisition/DefaultRequestedDate.java | 4 +- .../iso/acquisition/DefaultRequirement.java | 4 +- .../sis/metadata/iso/citation/AbstractParty.java | 2 +- .../sis/metadata/iso/citation/Citations.java | 8 +-- .../sis/metadata/iso/citation/DefaultAddress.java | 4 +- .../sis/metadata/iso/citation/DefaultCitation.java | 8 +-- .../metadata/iso/citation/DefaultCitationDate.java | 4 +- .../sis/metadata/iso/citation/DefaultContact.java | 4 +- .../metadata/iso/citation/DefaultIndividual.java | 2 +- .../iso/citation/DefaultOnlineResource.java | 4 +- .../metadata/iso/citation/DefaultOrganisation.java | 2 +- .../iso/citation/DefaultResponsibility.java | 2 +- .../iso/citation/DefaultResponsibleParty.java | 6 +- .../sis/metadata/iso/citation/DefaultSeries.java | 4 +- .../metadata/iso/citation/DefaultTelephone.java | 4 +- .../iso/constraint/DefaultConstraints.java | 4 +- .../iso/constraint/DefaultLegalConstraints.java | 4 +- .../iso/constraint/DefaultReleasability.java | 2 +- .../iso/constraint/DefaultSecurityConstraints.java | 4 +- .../iso/content/AbstractContentInformation.java | 4 +- .../iso/content/DefaultAttributeGroup.java | 2 +- .../sis/metadata/iso/content/DefaultBand.java | 4 +- .../iso/content/DefaultCoverageDescription.java | 4 +- .../DefaultFeatureCatalogueDescription.java | 4 +- .../iso/content/DefaultFeatureTypeInfo.java | 2 +- .../iso/content/DefaultImageDescription.java | 4 +- .../iso/content/DefaultRangeDimension.java | 4 +- .../content/DefaultRangeElementDescription.java | 4 +- .../iso/content/DefaultSampleDimension.java | 6 +- .../metadata/iso/distribution/DefaultDataFile.java | 4 +- .../DefaultDigitalTransferOptions.java | 4 +- .../iso/distribution/DefaultDistribution.java | 4 +- .../iso/distribution/DefaultDistributor.java | 4 +- .../metadata/iso/distribution/DefaultFormat.java | 4 +- .../metadata/iso/distribution/DefaultMedium.java | 4 +- .../distribution/DefaultStandardOrderProcess.java | 4 +- .../iso/extent/AbstractGeographicExtent.java | 4 +- .../iso/extent/DefaultBoundingPolygon.java | 4 +- .../sis/metadata/iso/extent/DefaultExtent.java | 4 +- .../iso/extent/DefaultGeographicBoundingBox.java | 10 +-- .../iso/extent/DefaultGeographicDescription.java | 4 +- .../iso/extent/DefaultSpatialTemporalExtent.java | 4 +- .../metadata/iso/extent/DefaultTemporalExtent.java | 4 +- .../metadata/iso/extent/DefaultVerticalExtent.java | 6 +- .../apache/sis/metadata/iso/extent/Extents.java | 4 +- .../iso/identification/AbstractIdentification.java | 4 +- .../DefaultAggregateInformation.java | 6 +- .../identification/DefaultAssociatedResource.java | 2 +- .../iso/identification/DefaultBrowseGraphic.java | 4 +- .../iso/identification/DefaultCoupledResource.java | 2 +- .../identification/DefaultDataIdentification.java | 4 +- .../iso/identification/DefaultKeywordClass.java | 2 +- .../iso/identification/DefaultKeywords.java | 4 +- .../DefaultOperationChainMetadata.java | 2 +- .../identification/DefaultOperationMetadata.java | 2 +- .../DefaultRepresentativeFraction.java | 2 +- .../iso/identification/DefaultResolution.java | 4 +- .../DefaultServiceIdentification.java | 4 +- .../metadata/iso/identification/DefaultUsage.java | 4 +- .../sis/metadata/iso/lineage/DefaultAlgorithm.java | 4 +- .../sis/metadata/iso/lineage/DefaultLineage.java | 4 +- .../iso/lineage/DefaultNominalResolution.java | 4 +- .../metadata/iso/lineage/DefaultProcessStep.java | 4 +- .../iso/lineage/DefaultProcessStepReport.java | 4 +- .../metadata/iso/lineage/DefaultProcessing.java | 4 +- .../sis/metadata/iso/lineage/DefaultSource.java | 4 +- .../maintenance/DefaultMaintenanceInformation.java | 4 +- .../sis/metadata/iso/maintenance/DefaultScope.java | 4 +- .../iso/maintenance/DefaultScopeDescription.java | 4 +- .../metadata/iso/quality/AbstractCompleteness.java | 4 +- .../iso/quality/AbstractDataEvaluation.java | 2 +- .../sis/metadata/iso/quality/AbstractElement.java | 35 +++++++--- .../iso/quality/AbstractLogicalConsistency.java | 4 +- .../metadata/iso/quality/AbstractMetaquality.java | 2 +- .../iso/quality/AbstractPositionalAccuracy.java | 4 +- .../sis/metadata/iso/quality/AbstractResult.java | 4 +- .../iso/quality/AbstractTemporalAccuracy.java | 6 +- .../iso/quality/AbstractTemporalQuality.java | 4 +- .../iso/quality/AbstractThematicAccuracy.java | 4 +- .../DefaultAbsoluteExternalPositionalAccuracy.java | 4 +- .../quality/DefaultAccuracyOfATimeMeasurement.java | 4 +- .../iso/quality/DefaultAggregationDerivation.java | 2 +- .../metadata/iso/quality/DefaultBasicMeasure.java | 2 +- .../iso/quality/DefaultCompletenessCommission.java | 4 +- .../iso/quality/DefaultCompletenessOmission.java | 4 +- .../iso/quality/DefaultConceptualConsistency.java | 4 +- .../metadata/iso/quality/DefaultConfidence.java | 2 +- .../iso/quality/DefaultConformanceResult.java | 4 +- .../iso/quality/DefaultCoverageResult.java | 7 +- .../metadata/iso/quality/DefaultDataQuality.java | 4 +- .../metadata/iso/quality/DefaultDescription.java | 2 +- .../iso/quality/DefaultDescriptiveResult.java | 2 +- .../iso/quality/DefaultDomainConsistency.java | 4 +- .../iso/quality/DefaultEvaluationMethod.java | 2 +- .../iso/quality/DefaultFormatConsistency.java | 4 +- .../iso/quality/DefaultFullInspection.java | 2 +- .../DefaultGriddedDataPositionalAccuracy.java | 4 +- .../metadata/iso/quality/DefaultHomogeneity.java | 2 +- .../iso/quality/DefaultIndirectEvaluation.java | 2 +- .../sis/metadata/iso/quality/DefaultMeasure.java | 2 +- .../iso/quality/DefaultMeasureReference.java | 2 +- .../DefaultNonQuantitativeAttributeAccuracy.java | 4 +- ...DefaultNonQuantitativeAttributeCorrectness.java | 4 +- .../DefaultQuantitativeAttributeAccuracy.java | 4 +- .../iso/quality/DefaultQuantitativeResult.java | 4 +- .../DefaultRelativeInternalPositionalAccuracy.java | 4 +- .../iso/quality/DefaultRepresentativity.java | 2 +- .../iso/quality/DefaultSampleBasedInspection.java | 2 +- .../sis/metadata/iso/quality/DefaultScope.java | 4 +- .../iso/quality/DefaultSourceReference.java | 2 +- .../DefaultStandaloneQualityReportInformation.java | 2 +- .../iso/quality/DefaultTemporalConsistency.java | 4 +- .../iso/quality/DefaultTemporalValidity.java | 4 +- .../DefaultThematicClassificationCorrectness.java | 4 +- .../iso/quality/DefaultTopologicalConsistency.java | 4 +- .../sis/metadata/iso/quality/DefaultUsability.java | 4 +- .../iso/quality/DefaultUsabilityElement.java | 4 +- .../spatial/AbstractGeolocationInformation.java | 4 +- .../iso/spatial/AbstractSpatialRepresentation.java | 4 +- .../sis/metadata/iso/spatial/DefaultDimension.java | 4 +- .../sis/metadata/iso/spatial/DefaultGCP.java | 4 +- .../metadata/iso/spatial/DefaultGCPCollection.java | 4 +- .../iso/spatial/DefaultGeometricObjects.java | 4 +- .../metadata/iso/spatial/DefaultGeorectified.java | 4 +- .../iso/spatial/DefaultGeoreferenceable.java | 4 +- .../spatial/DefaultGridSpatialRepresentation.java | 4 +- .../DefaultVectorSpatialRepresentation.java | 4 +- .../java/org/apache/sis/metadata/package-info.java | 6 +- .../apache/sis/metadata/sql/CachedStatement.java | 2 +- .../org/apache/sis/metadata/sql/Dispatcher.java | 2 +- .../sis/metadata/sql/IdentifierGenerator.java | 2 +- .../org/apache/sis/metadata/sql/LookupInfo.java | 2 +- .../apache/sis/metadata/sql/MetadataWriter.java | 12 ++-- .../apache/sis/metadata/sql/TableHierarchy.java | 4 +- .../java/org/apache/sis/util/iso/AbstractName.java | 6 +- .../org/apache/sis/util/iso/DefaultLocalName.java | 2 +- .../org/apache/sis/util/iso/DefaultNameSpace.java | 8 +-- .../apache/sis/util/iso/DefaultRecordSchema.java | 2 +- .../org/apache/sis/util/iso/RecordDefinition.java | 2 +- .../main/java/org/apache/sis/util/iso/Types.java | 6 +- .../java/org/apache/sis/xml/IdentifiedObject.java | 6 +- .../java/org/apache/sis/xml/IdentifierSpace.java | 10 +-- .../main/java/org/apache/sis/xml/Namespaces.java | 78 +++++++++++----------- .../main/java/org/apache/sis/xml/NilObject.java | 2 +- .../java/org/apache/sis/xml/PooledTemplate.java | 2 +- .../java/org/apache/sis/xml/TransformVersion.java | 4 +- .../main/java/org/apache/sis/xml/Transformer.java | 12 ++-- .../org/apache/sis/xml/TransformingNamespaces.java | 6 +- .../org/apache/sis/xml/TransformingReader.java | 8 +-- .../org/apache/sis/xml/TransformingWriter.java | 8 +-- .../java/org/apache/sis/xml/ValueConverter.java | 6 +- .../src/main/java/org/apache/sis/xml/XML.java | 10 +-- .../src/main/java/org/apache/sis/xml/XPointer.java | 2 +- .../main/java/org/apache/sis/xml/package-info.java | 6 +- .../src/main/java/org/apache/sis/xml/readme.html | 2 +- .../sis/internal/metadata/IdentifiersTest.java | 2 +- .../apache/sis/metadata/MetadataStandardTest.java | 2 +- .../sis/metadata/PropertyConsistencyCheck.java | 2 +- .../apache/sis/metadata/TreeNodeChildrenTest.java | 4 +- .../org/apache/sis/metadata/iso/APIVerifier.java | 2 +- .../constraint/DefaultLegalConstraintsTest.java | 7 +- .../sis/metadata/iso/content/DefaultBandTest.java | 7 +- .../sis/metadata/iso/extent/ExtentsTest.java | 4 +- .../metadata/iso/lineage/DefaultLineageTest.java | 8 +-- .../iso/quality/DefaultQuantitativeResultTest.java | 2 +- .../java/org/apache/sis/test/MetadataAssert.java | 4 +- .../sis/test/xml/AnnotationConsistencyCheck.java | 6 +- .../apache/sis/test/xml/DocumentComparator.java | 6 +- .../java/org/apache/sis/test/xml/TestCase.java | 6 +- .../sis/xml/CharSequenceSubstitutionTest.java | 3 +- .../java/org/apache/sis/xml/NamespacesTest.java | 8 ++- .../coverage/MultiResolutionCoverageLoader.java | 2 +- .../sis/internal/map/coverage/RenderingData.java | 2 +- .../main/java/org/apache/sis/portrayal/Canvas.java | 10 +-- .../org/apache/sis/portrayal/CanvasFollower.java | 2 +- .../org/apache/sis/portrayal/PlanarCanvas.java | 4 +- .../referencing/gazetteer/FinalLocationType.java | 2 +- .../gazetteer/MilitaryGridReferenceSystem.java | 12 ++-- .../gazetteer/ModifiableLocationType.java | 4 +- .../gazetteer/ReferenceVerifyException.java | 2 +- .../sis/referencing/gazetteer/SimpleLocation.java | 2 +- .../gazetteer/GeohashReferenceSystemTest.java | 2 +- .../sis/geometry/AbstractDirectPosition.java | 2 +- .../org/apache/sis/geometry/AbstractEnvelope.java | 12 ++-- .../org/apache/sis/geometry/ArrayEnvelope.java | 2 +- .../org/apache/sis/geometry/CoordinateFormat.java | 6 +- .../org/apache/sis/geometry/DirectPosition2D.java | 2 +- .../java/org/apache/sis/geometry/Envelopes.java | 20 +++--- .../apache/sis/geometry/GeneralDirectPosition.java | 6 +- .../org/apache/sis/geometry/GeneralEnvelope.java | 12 ++-- .../org/apache/sis/geometry/ImmutableEnvelope.java | 2 +- .../java/org/apache/sis/geometry/Shapes2D.java | 6 +- .../apache/sis/geometry/WraparoundAdjustment.java | 4 +- .../apache/sis/geometry/WraparoundInEnvelope.java | 2 +- .../org/apache/sis/geometry/WraparoundMethod.java | 2 +- .../java/org/apache/sis/geometry/package-info.java | 2 +- .../internal/jaxb/referencing/CC_Conversion.java | 2 +- .../referencing/CC_GeneralOperationParameter.java | 4 +- .../jaxb/referencing/CC_OperationMethod.java | 2 +- .../referencing/CC_OperationParameterGroup.java | 2 +- .../apache/sis/internal/jaxb/referencing/Code.java | 4 +- .../sis/internal/referencing/AxisDirections.java | 4 +- .../internal/referencing/CoordinateOperations.java | 6 +- .../sis/internal/referencing/DatabaseListener.java | 2 +- .../apache/sis/internal/referencing/Formulas.java | 4 +- .../referencing/GeodeticObjectBuilder.java | 2 +- .../apache/sis/internal/referencing/LazySet.java | 2 +- .../internal/referencing/PositionTransformer.java | 2 +- .../apache/sis/internal/referencing/RTreeNode.java | 2 +- .../apache/sis/internal/referencing/Resources.java | 2 +- .../sis/internal/referencing/Resources.properties | 2 +- .../referencing/j2d/AffineTransform2D.java | 8 ++- .../sis/internal/referencing/j2d/Bezier.java | 8 +-- .../referencing/j2d/IntervalRectangle.java | 2 +- .../referencing/j2d/ParameterizedAffine.java | 7 +- .../apache/sis/internal/referencing/j2d/Tile.java | 8 +-- .../referencing/provider/DatumShiftGridFile.java | 2 +- .../referencing/provider/DatumShiftGridGroup.java | 2 +- .../internal/referencing/provider/EPSGName.java | 4 +- .../referencing/provider/Equirectangular.java | 2 +- .../provider/FranceGeocentricInterpolation.java | 6 +- .../referencing/provider/GeodeticOperation.java | 2 +- .../provider/Geographic3DtoVertical.txt | 2 +- .../referencing/provider/LambertConformalWest.java | 2 +- .../internal/referencing/provider/Mercator2SP.java | 2 +- .../referencing/provider/MillerCylindrical.java | 2 +- .../provider/ModifiedAzimuthalEquidistant.java | 2 +- .../provider/MolodenskyInterpolation.java | 2 +- .../sis/internal/referencing/provider/NADCON.java | 2 +- .../referencing/provider/PolarStereographicB.java | 2 +- .../referencing/provider/VerticalOffset.java | 4 +- .../java/org/apache/sis/io/wkt/Convention.java | 6 +- .../org/apache/sis/io/wkt/FormattableObject.java | 2 +- .../main/java/org/apache/sis/io/wkt/Formatter.java | 4 +- .../apache/sis/io/wkt/GeodeticObjectParser.java | 12 ++-- .../java/org/apache/sis/io/wkt/KeywordCase.java | 2 +- .../org/apache/sis/io/wkt/MathTransformParser.java | 6 +- .../main/java/org/apache/sis/io/wkt/Parser.java | 2 +- .../java/org/apache/sis/io/wkt/StoredTree.java | 10 +-- .../main/java/org/apache/sis/io/wkt/Symbols.java | 2 +- .../java/org/apache/sis/io/wkt/Transliterator.java | 6 +- .../sis/io/wkt/UnformattableObjectException.java | 2 +- .../java/org/apache/sis/io/wkt/VerticalInfo.java | 2 +- .../java/org/apache/sis/io/wkt/WKTDictionary.java | 10 +-- .../main/java/org/apache/sis/io/wkt/WKTFormat.java | 4 +- .../main/java/org/apache/sis/io/wkt/Warnings.java | 2 +- .../java/org/apache/sis/io/wkt/package-info.java | 12 ++-- .../sis/parameter/DefaultParameterDescriptor.java | 2 +- .../sis/parameter/DefaultParameterValue.java | 2 +- .../sis/parameter/DefaultParameterValueGroup.java | 2 +- .../org/apache/sis/parameter/MatrixParameters.java | 2 +- .../org/apache/sis/parameter/ParameterBuilder.java | 4 +- .../org/apache/sis/parameter/ParameterFormat.java | 2 +- .../apache/sis/parameter/ParameterValueList.java | 2 +- .../java/org/apache/sis/parameter/Parameters.java | 6 +- .../org/apache/sis/parameter/TensorParameters.java | 2 +- .../sis/parameter/UnmodifiableParameterValue.java | 2 +- .../java/org/apache/sis/parameter/Verifier.java | 2 +- .../sis/referencing/AbstractIdentifiedObject.java | 24 +++---- .../sis/referencing/AbstractReferenceSystem.java | 2 +- .../java/org/apache/sis/referencing/Builder.java | 6 +- .../main/java/org/apache/sis/referencing/CRS.java | 16 ++--- .../java/org/apache/sis/referencing/CommonCRS.java | 2 +- .../sis/referencing/EPSGFactoryFallback.java | 2 +- .../sis/referencing/GeodesicsOnEllipsoid.java | 10 +-- .../apache/sis/referencing/GeodeticCalculator.java | 12 ++-- .../apache/sis/referencing/IdentifiedObjects.java | 8 +-- .../sis/referencing/ImmutableIdentifier.java | 4 +- .../org/apache/sis/referencing/NameIterator.java | 2 +- .../apache/sis/referencing/NamedIdentifier.java | 4 +- .../apache/sis/referencing/crs/AbstractCRS.java | 6 +- .../sis/referencing/crs/AbstractDerivedCRS.java | 4 +- .../sis/referencing/crs/DefaultCompoundCRS.java | 4 +- .../sis/referencing/crs/DefaultDerivedCRS.java | 6 +- .../sis/referencing/crs/DefaultEngineeringCRS.java | 2 +- .../sis/referencing/crs/DefaultGeodeticCRS.java | 4 +- .../sis/referencing/crs/DefaultImageCRS.java | 2 +- .../org/apache/sis/referencing/crs/SubTypes.java | 2 +- .../org/apache/sis/referencing/cs/AbstractCS.java | 8 +-- .../apache/sis/referencing/cs/AxesConvention.java | 10 +-- .../org/apache/sis/referencing/cs/AxisFilter.java | 2 +- .../sis/referencing/cs/CoordinateSystems.java | 2 +- .../cs/DefaultCoordinateSystemAxis.java | 8 +-- .../org/apache/sis/referencing/cs/Normalizer.java | 2 +- .../sis/referencing/datum/AbstractDatum.java | 6 +- .../sis/referencing/datum/BursaWolfParameters.java | 2 +- .../sis/referencing/datum/DatumShiftGrid.java | 10 +-- .../referencing/datum/DefaultGeodeticDatum.java | 4 +- .../referencing/datum/DefaultPrimeMeridian.java | 6 +- .../referencing/datum/DefaultVerticalDatum.java | 2 +- .../referencing/factory/AuthorityFactoryProxy.java | 2 +- .../factory/CommonAuthorityFactory.java | 4 +- .../factory/ConcurrentAuthorityFactory.java | 8 +-- .../referencing/factory/GeodeticObjectFactory.java | 6 +- .../factory/IdentifiedObjectFinder.java | 4 +- .../referencing/factory/IdentifiedObjectSet.java | 6 +- .../factory/LazySynchronizedIterator.java | 2 +- .../factory/MissingFactoryResourceException.java | 2 +- .../factory/MultiAuthoritiesFactory.java | 12 ++-- .../sis/referencing/factory/ReferenceKeeper.java | 2 +- .../referencing/factory/sql/AuthorityCodes.java | 2 +- .../sis/referencing/factory/sql/BursaWolfInfo.java | 2 +- .../referencing/factory/sql/EPSGCodeFinder.java | 2 +- .../referencing/factory/sql/EPSGDataAccess.java | 20 +++--- .../sis/referencing/factory/sql/SQLTranslator.java | 6 +- .../sis/referencing/factory/sql/TableInfo.java | 4 +- .../sis/referencing/factory/sql/package-info.java | 4 +- .../operation/AbstractCoordinateOperation.java | 6 +- .../operation/AbstractSingleOperation.java | 10 +-- .../operation/CoordinateOperationContext.java | 2 +- .../operation/CoordinateOperationFinder.java | 8 +-- .../operation/CoordinateOperationRegistry.java | 8 +-- .../operation/DefaultConcatenatedOperation.java | 10 +-- .../referencing/operation/DefaultConversion.java | 12 ++-- .../operation/DefaultOperationMethod.java | 14 ++-- .../operation/DefaultPassThroughOperation.java | 6 +- .../operation/DefaultTransformation.java | 4 +- .../operation/InverseOperationMethod.java | 4 +- .../operation/LooselyDefinedMethod.java | 4 +- .../operation/MismatchedDatumException.java | 2 +- .../referencing/operation/SubOperationInfo.java | 8 +-- .../operation/builder/LinearTransformBuilder.java | 12 ++-- .../operation/builder/LocalizationGridBuilder.java | 4 +- .../builder/LocalizationGridException.java | 2 +- .../operation/builder/ProjectedTransformTry.java | 2 +- .../operation/builder/ResidualGrid.java | 4 +- .../sis/referencing/operation/builder/readme.html | 2 +- .../operation/matrix/GeneralMatrix.java | 2 +- .../sis/referencing/operation/matrix/Matrices.java | 8 +-- .../operation/matrix/NonSquareMatrix.java | 2 +- .../referencing/operation/matrix/package-info.java | 2 +- .../sis/referencing/operation/package-info.java | 4 +- .../operation/projection/AlbersEqualArea.java | 4 +- .../operation/projection/AuthalicConversion.java | 10 +-- .../operation/projection/ConformalProjection.java | 12 ++-- .../operation/projection/CylindricalEqualArea.java | 6 +- .../operation/projection/Initializer.java | 2 +- .../projection/LambertAzimuthalEqualArea.java | 2 +- .../projection/LambertConicConformal.java | 6 +- .../operation/projection/LongitudeWraparound.java | 2 +- .../referencing/operation/projection/Mercator.java | 10 +-- .../operation/projection/MeridianArcBased.java | 6 +- .../projection/ModifiedAzimuthalEquidistant.java | 2 +- .../operation/projection/Mollweide.java | 2 +- .../operation/projection/NormalizedProjection.java | 8 +-- .../operation/projection/ObliqueStereographic.java | 6 +- .../operation/projection/SatelliteTracking.java | 2 +- .../operation/projection/Sinusoidal.java | 4 +- .../operation/projection/TransverseMercator.java | 8 +-- .../operation/projection/package-info.java | 4 +- .../transform/AbstractLinearTransform.java | 4 +- .../operation/transform/AbstractMathTransform.java | 10 +-- .../transform/AbstractMathTransform2D.java | 2 +- .../operation/transform/ConcatenatedTransform.java | 10 +-- .../operation/transform/ContextualParameter.java | 2 +- .../operation/transform/ContextualParameters.java | 14 ++-- .../operation/transform/DatumShiftTransform.java | 2 +- .../transform/DefaultMathTransformFactory.java | 18 ++--- .../operation/transform/DomainDefinition.java | 2 +- .../transform/ExponentialTransform1D.java | 4 +- .../operation/transform/InterpolatedTransform.java | 10 +-- .../operation/transform/LinearTransform.java | 4 +- .../transform/LogarithmicTransform1D.java | 4 +- .../operation/transform/MathTransforms.java | 4 +- .../operation/transform/MolodenskyFormula.java | 2 +- .../operation/transform/OperationMethodSet.java | 6 +- .../operation/transform/PassThroughTransform.java | 4 +- .../operation/transform/PoleRotation.java | 2 +- .../operation/transform/TransformSeparator.java | 4 +- .../operation/transform/WraparoundTransform.java | 12 ++-- .../operation/transform/package-info.java | 4 +- .../org/apache/sis/referencing/package-info.java | 2 +- .../org/apache/sis/geometry/TransformTestCase.java | 4 +- .../provider/GeographicOffsetsTest.java | 2 +- .../internal/referencing/provider/NTv2Test.java | 2 +- .../sis/io/wkt/GeodeticObjectParserTest.java | 4 +- .../apache/sis/referencing/ClenshawSummation.java | 4 +- .../sis/referencing/EPSGFactoryFallbackTest.java | 2 +- .../sis/referencing/GeodeticCalculatorTest.java | 2 +- .../apache/sis/referencing/cs/HardCodedAxes.java | 2 +- .../apache/sis/referencing/cs/NormalizerTest.java | 2 +- .../datum/DefaultGeodeticDatumTest.java | 2 +- .../factory/ConcurrentAuthorityFactoryTest.java | 2 +- .../referencing/factory/sql/EPSGFactoryTest.java | 4 +- .../factory/sql/epsg/DataScriptFormatter.java | 2 +- .../sis/referencing/factory/sql/epsg/package.html | 2 +- .../operation/CoordinateOperationFinderTest.java | 4 +- .../operation/CoordinateOperationRegistryTest.java | 2 +- .../operation/DefaultConversionTest.java | 2 +- .../operation/builder/ResidualGridTest.java | 2 +- .../referencing/operation/matrix/MatricesTest.java | 2 +- .../operation/matrix/MatrixTestCase.java | 12 ++-- .../operation/matrix/NonSquareMatrixTest.java | 2 +- .../operation/projection/AlbersEqualAreaTest.java | 2 +- .../projection/ConformalProjectionTest.java | 4 +- .../operation/projection/InitializerTest.java | 2 +- .../projection/LambertConicConformalTest.java | 2 +- .../projection/MapProjectionTestCase.java | 2 +- .../projection/MercatorMethodComparison.java | 2 +- .../projection/ObliqueStereographicTest.java | 2 +- .../projection/TransverseMercatorTest.java | 2 +- .../transform/DefaultMathTransformFactoryTest.java | 2 +- .../transform/ProjectiveTransformTest.java | 2 +- .../sis/test/integration/ConsistencyTest.java | 4 +- .../apache/sis/test/integration/MetadataTest.java | 2 +- .../referencing/datum/VerticalDatum (GML 3.1).xml | 2 +- .../sis/internal/converter/ArrayConverter.java | 2 +- .../apache/sis/internal/converter/ClassPair.java | 2 +- .../sis/internal/converter/ConverterRegistry.java | 12 ++-- .../sis/internal/converter/FallbackConverter.java | 6 +- .../sis/internal/converter/NumberConverter.java | 4 +- .../sis/internal/converter/StringConverter.java | 2 +- .../internal/converter/SurjectiveConverter.java | 2 +- .../sis/internal/converter/SystemRegistry.java | 2 +- .../apache/sis/internal/system/CommonExecutor.java | 2 +- .../sis/internal/system/DelayedExecutor.java | 2 +- .../sis/internal/system/LocalizedStaticObject.java | 2 +- .../org/apache/sis/internal/system/Loggers.java | 2 +- .../internal/system/ReferenceQueueConsumer.java | 2 +- .../org/apache/sis/internal/system/Threads.java | 2 +- .../apache/sis/internal/util/CollectionsExt.java | 10 +-- .../org/apache/sis/internal/util/Constants.java | 4 +- .../apache/sis/internal/util/DefinitionURI.java | 4 +- .../org/apache/sis/internal/util/DoubleDouble.java | 4 +- .../apache/sis/internal/util/SetOfUnknownSize.java | 4 +- .../sis/internal/util/StandardDateFormat.java | 2 +- .../java/org/apache/sis/internal/util/Strings.java | 2 +- .../sis/internal/util/UnmodifiableArrayList.java | 6 +- .../java/org/apache/sis/internal/util/X364.java | 2 +- .../java/org/apache/sis/io/CompoundFormat.java | 10 +-- .../main/java/org/apache/sis/io/package-info.java | 2 +- .../main/java/org/apache/sis/math/ArrayVector.java | 4 +- .../apache/sis/math/CompoundDirectPositions.java | 2 +- .../java/org/apache/sis/math/DecimalFunctions.java | 34 +++++----- .../main/java/org/apache/sis/math/Fraction.java | 6 +- .../java/org/apache/sis/math/FunctionProperty.java | 4 +- .../java/org/apache/sis/math/MathFunctions.java | 6 +- .../src/main/java/org/apache/sis/math/Vector.java | 14 ++-- .../java/org/apache/sis/math/package-info.java | 2 +- .../java/org/apache/sis/measure/AbstractUnit.java | 18 ++--- .../java/org/apache/sis/measure/AngleFormat.java | 14 ++-- .../org/apache/sis/measure/ConventionalUnit.java | 8 +-- .../java/org/apache/sis/measure/DerivedScalar.java | 4 +- .../org/apache/sis/measure/LinearConverter.java | 2 +- .../java/org/apache/sis/measure/NumberRange.java | 2 +- .../java/org/apache/sis/measure/Quantities.java | 4 +- .../main/java/org/apache/sis/measure/Range.java | 10 +-- .../java/org/apache/sis/measure/RangeFormat.java | 2 +- .../main/java/org/apache/sis/measure/Salinity.java | 2 +- .../main/java/org/apache/sis/measure/Scalar.java | 2 +- .../java/org/apache/sis/measure/UnitFormat.java | 22 +++--- .../main/java/org/apache/sis/measure/Units.java | 6 +- .../java/org/apache/sis/measure/package-info.java | 2 +- .../src/main/java/org/apache/sis/setup/About.java | 2 +- .../apache/sis/setup/InstallationResources.java | 2 +- .../main/java/org/apache/sis/setup/OptionKey.java | 10 +-- .../sis/util/AbstractInternationalString.java | 2 +- .../java/org/apache/sis/util/CharSequences.java | 22 +++--- .../src/main/java/org/apache/sis/util/Classes.java | 6 +- .../java/org/apache/sis/util/ComparisonMode.java | 2 +- .../apache/sis/util/CorruptedObjectException.java | 4 +- .../sis/util/DefaultInternationalString.java | 2 +- .../main/java/org/apache/sis/util/Disposable.java | 2 +- .../main/java/org/apache/sis/util/Emptiable.java | 2 +- .../main/java/org/apache/sis/util/Exceptions.java | 4 +- .../org/apache/sis/util/LenientComparable.java | 4 +- .../src/main/java/org/apache/sis/util/Locales.java | 4 +- .../main/java/org/apache/sis/util/Localized.java | 2 +- .../org/apache/sis/util/LocalizedException.java | 4 +- .../org/apache/sis/util/NullArgumentException.java | 2 +- .../sis/util/ResourceInternationalString.java | 2 +- .../java/org/apache/sis/util/StringBuilders.java | 4 +- .../util/UnsupportedImplementationException.java | 2 +- .../main/java/org/apache/sis/util/Utilities.java | 2 +- .../src/main/java/org/apache/sis/util/Version.java | 4 +- .../java/org/apache/sis/util/collection/Cache.java | 6 +- .../apache/sis/util/collection/CodeListSet.java | 2 +- .../org/apache/sis/util/collection/Containers.java | 8 +-- .../sis/util/collection/DefaultTreeTable.java | 4 +- .../sis/util/collection/DerivedIterator.java | 2 +- .../org/apache/sis/util/collection/TreeTable.java | 6 +- .../sis/util/collection/TreeTableFormat.java | 2 +- .../org/apache/sis/util/collection/TreeTables.java | 2 +- .../sis/util/collection/WeakValueHashMap.java | 2 +- .../java/org/apache/sis/util/logging/Logging.java | 2 +- .../apache/sis/util/logging/MonolineFormatter.java | 4 +- .../apache/sis/util/logging/PerformanceLevel.java | 8 +-- .../org/apache/sis/util/logging/package-info.java | 2 +- .../sis/util/resources/IndexedResourceBundle.java | 2 +- .../apache/sis/util/resources/package-info.java | 2 +- core/sis-utility/src/main/javadoc/overview.html | 4 +- .../java/org/apache/sis/measure/DateRangeTest.java | 2 +- .../apache/sis/measure/LinearConverterTest.java | 2 +- .../org/apache/sis/measure/UnitFormatTest.java | 2 +- .../java/org/apache/sis/setup/OptionKeyTest.java | 2 +- .../test/java/org/apache/sis/test/TestStep.java | 2 +- .../test/java/org/apache/sis/test/TestSuite.java | 2 +- .../java/org/apache/sis/test/TestUtilities.java | 6 +- .../java/org/apache/sis/test/package-info.java | 2 +- .../sis/util/collection/WeakHashSetTest.java | 2 +- .../sis/util/collection/WeakValueHashMapTest.java | 2 +- ide-project/README.txt | 2 +- .../apache/sis/internal/earth/netcdf/GCOM_C.java | 6 +- .../sis/storage/landsat/LandsatStoreProvider.java | 2 +- .../apache/sis/storage/landsat/MetadataReader.java | 4 +- .../storage/landsat/doc-files/MetadataMapping.html | 2 +- .../sis/internal/geotiff/SchemaModifier.java | 2 +- .../sis/internal/storage/inflater/CCITTRLE.java | 4 +- .../sis/internal/storage/inflater/Inflater.java | 2 +- .../apache/sis/internal/storage/inflater/LZW.java | 4 +- .../internal/storage/inflater/package-info.java | 2 +- .../org/apache/sis/storage/geotiff/CRSBuilder.java | 2 +- .../org/apache/sis/storage/geotiff/DataCube.java | 2 +- .../org/apache/sis/storage/geotiff/DataSubset.java | 2 +- .../sis/storage/geotiff/GeoTiffStoreProvider.java | 2 +- .../sis/storage/geotiff/ImageFileDirectory.java | 6 +- .../apache/sis/storage/geotiff/Localization.java | 2 +- .../apache/sis/storage/geotiff/NativeMetadata.java | 2 +- .../sis/storage/geotiff/ReversedBitsChannel.java | 2 +- .../apache/sis/storage/geotiff/GeoIdentifiers.java | 2 +- .../apache/sis/storage/geotiff/GeoKeysTest.java | 2 +- .../sis/storage/geotiff/XMLMetadataTest.java | 4 +- .../java/org/apache/sis/internal/netcdf/Axis.java | 14 ++-- .../org/apache/sis/internal/netcdf/CRSBuilder.java | 2 +- .../org/apache/sis/internal/netcdf/Convention.java | 6 +- .../org/apache/sis/internal/netcdf/DataType.java | 8 +-- .../org/apache/sis/internal/netcdf/Decoder.java | 4 +- .../java/org/apache/sis/internal/netcdf/Grid.java | 2 +- .../apache/sis/internal/netcdf/GridAdjustment.java | 4 +- .../apache/sis/internal/netcdf/GridCacheKey.java | 2 +- .../apache/sis/internal/netcdf/GridMapping.java | 2 +- .../org/apache/sis/internal/netcdf/Linearizer.java | 8 +-- .../apache/sis/internal/netcdf/RasterResource.java | 8 +-- .../org/apache/sis/internal/netcdf/Variable.java | 14 ++-- .../apache/sis/internal/netcdf/VariableRole.java | 2 +- .../sis/internal/netcdf/impl/ChannelDecoder.java | 2 +- .../apache/sis/internal/netcdf/impl/GridInfo.java | 2 +- .../sis/internal/netcdf/impl/VariableInfo.java | 6 +- .../apache/sis/internal/netcdf/package-info.java | 4 +- .../sis/internal/netcdf/ucar/DecoderWrapper.java | 2 +- .../sis/internal/netcdf/ucar/DimensionWrapper.java | 4 +- .../sis/internal/netcdf/ucar/GridWrapper.java | 4 +- .../sis/internal/netcdf/ucar/LogAdapter.java | 2 +- .../sis/internal/netcdf/ucar/VariableWrapper.java | 2 +- .../apache/sis/storage/netcdf/AttributeNames.java | 12 ++-- .../apache/sis/storage/netcdf/MetadataReader.java | 6 +- .../sis/storage/netcdf/NetcdfStoreProvider.java | 2 +- .../apache/sis/internal/netcdf/DecoderTest.java | 2 +- .../org/apache/sis/internal/netcdf/GridTest.java | 2 +- .../apache/sis/internal/netcdf/VariableTest.java | 2 +- .../apache/sis/internal/sql/feature/Column.java | 2 +- .../apache/sis/internal/sql/feature/Database.java | 6 +- .../sis/internal/sql/feature/FeatureAnalyzer.java | 2 +- .../sis/internal/sql/feature/FeatureIterator.java | 2 +- .../sis/internal/sql/feature/FeatureStream.java | 2 +- .../sis/internal/sql/feature/InfoStatements.java | 2 +- .../apache/sis/internal/sql/feature/Relation.java | 4 +- .../org/apache/sis/internal/sql/feature/Table.java | 2 +- .../sis/internal/sql/postgis/RasterFormat.java | 2 +- .../sis/internal/sql/postgis/RasterReader.java | 2 +- .../sis/internal/sql/postgis/RasterWriter.java | 2 +- .../apache/sis/internal/stream/DeferredStream.java | 2 +- .../sis/internal/storage/MetadataBuilder.java | 4 +- .../apache/sis/internal/storage/PRJDataStore.java | 4 +- .../apache/sis/internal/storage/StoreMetadata.java | 4 +- .../sis/internal/storage/StoreUtilities.java | 2 +- .../sis/internal/storage/TiledGridCoverage.java | 6 +- .../sis/internal/storage/TiledGridResource.java | 4 +- .../sis/internal/storage/csv/FeatureIterator.java | 4 +- .../storage/csv/MovingFeatureIterator.java | 2 +- .../sis/internal/storage/csv/StoreProvider.java | 2 +- .../storage/esri/AsciiGridStoreProvider.java | 2 +- .../sis/internal/storage/esri/RawRasterStore.java | 2 +- .../storage/esri/RawRasterStoreProvider.java | 2 +- .../sis/internal/storage/image/FormatFilter.java | 2 +- .../sis/internal/storage/image/WorldFileStore.java | 2 +- .../storage/image/WorldFileStoreProvider.java | 2 +- .../sis/internal/storage/image/WritableStore.java | 2 +- .../sis/internal/storage/io/ChannelData.java | 2 +- .../sis/internal/storage/io/ChannelDataInput.java | 2 +- .../sis/internal/storage/io/ChannelDataOutput.java | 2 +- .../storage/io/ChannelImageInputStream.java | 2 +- .../internal/storage/io/HyperRectangleReader.java | 2 +- .../sis/internal/storage/io/IOUtilities.java | 2 +- .../sis/internal/storage/wkt/StoreFormat.java | 2 +- .../sis/internal/storage/xml/package-info.java | 2 +- .../java/org/apache/sis/storage/Aggregate.java | 2 +- .../java/org/apache/sis/storage/CoverageQuery.java | 2 +- .../java/org/apache/sis/storage/DataOptionKey.java | 2 +- .../java/org/apache/sis/storage/DataStore.java | 6 +- .../org/apache/sis/storage/DataStoreException.java | 2 +- .../org/apache/sis/storage/DataStoreProvider.java | 6 +- .../java/org/apache/sis/storage/FeatureNaming.java | 4 +- .../java/org/apache/sis/storage/FeatureSet.java | 2 +- .../sis/storage/ForwardOnlyStorageException.java | 2 +- .../apache/sis/storage/GridCoverageResource.java | 8 +-- .../java/org/apache/sis/storage/ProbeResult.java | 4 +- .../main/java/org/apache/sis/storage/Resource.java | 2 +- .../org/apache/sis/storage/StorageConnector.java | 12 ++-- .../sis/storage/UnsupportedEncodingException.java | 2 +- .../aggregate/ConcatenatedGridCoverage.java | 2 +- .../sis/storage/aggregate/CoverageAggregator.java | 4 +- .../sis/storage/aggregate/JoinFeatureSet.java | 4 +- .../sis/storage/event/CascadedStoreEvent.java | 6 +- .../apache/sis/storage/event/StoreListeners.java | 2 +- .../java/org/apache/sis/storage/tiling/Tile.java | 2 +- .../apache/sis/storage/tiling/TileMatrixSet.java | 4 +- .../org/apache/sis/storage/tiling/TileStatus.java | 4 +- .../apache/sis/storage/tiling/TiledResource.java | 2 +- .../sis/storage/tiling/WritableTileMatrixSet.java | 2 +- .../internal/storage/io/ChannelDataOutputTest.java | 2 +- .../storage/io/HyperRectangleReaderTest.java | 4 +- .../storage/io/ImageInputStreamComparator.java | 2 +- .../storage/io/RewindableLineReaderTest.java | 2 +- .../apache/sis/storage/StorageConnectorTest.java | 2 +- .../sis/test/storage/CoverageReadConsistency.java | 2 +- .../apache/sis/test/storage/SubsampledImage.java | 4 +- .../apache/sis/internal/storage/gpx/Metadata.java | 2 +- .../apache/sis/internal/storage/gpx/Person.java | 2 +- .../apache/sis/internal/storage/gpx/Reader.java | 4 +- .../storage/xml/stream/FormattedWriter.java | 2 +- .../internal/storage/xml/stream/StaxDataStore.java | 2 +- .../storage/xml/stream/StaxStreamWriter.java | 2 +- 805 files changed, 1729 insertions(+), 1692 deletions(-) diff --cc core/sis-feature/src/main/java/org/apache/sis/coverage/SampleDimension.java index dde173c43f,f53b080120..a01ffc31b2 --- a/core/sis-feature/src/main/java/org/apache/sis/coverage/SampleDimension.java +++ b/core/sis-feature/src/main/java/org/apache/sis/coverage/SampleDimension.java @@@ -516,8 -519,8 +516,8 @@@ public class SampleDimension implement * then it should be declared using {@code setBackground(…)} method instead of {@code addQualitative(…)}.</p> * * <p>A <cite>quantitative category</cite> is a range of sample values associated to 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 + * 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 core/sis-feature/src/main/java/org/apache/sis/feature/DefaultAssociationRole.java index 62d5ccf417,7b3589b78f..415d7b884a --- a/core/sis-feature/src/main/java/org/apache/sis/feature/DefaultAssociationRole.java +++ b/core/sis-feature/src/main/java/org/apache/sis/feature/DefaultAssociationRole.java @@@ -338,12 -352,9 +338,12 @@@ public class DefaultAssociationRole ext * Returns the type of feature values. * * <p>This method cannot be invoked if {@link #isResolved()} returns {@code false}. - * However it is still possible to {@linkplain Features#getValueTypeName - * However, it is still possible to {@linkplain Features#getValueTypeName(PropertyType) ++ * However, it is still possible to {@linkplain Features#getValueTypeName * get the associated feature type name}.</p> * + * <div class="warning"><b>Warning:</b> In a future SIS version, the return type may be changed + * to {@code org.opengis.feature.FeatureType}. This change is pending GeoAPI revision.</div> + * * @return the type of feature values. * @throws IllegalStateException if the feature type has been specified * {@linkplain #DefaultAssociationRole(Map, GenericName, int, int) only by its name} diff --cc core/sis-feature/src/main/java/org/apache/sis/feature/DefaultFeatureType.java index 9b3a5bfbec,3ada174a79..fca73023b3 --- a/core/sis-feature/src/main/java/org/apache/sis/feature/DefaultFeatureType.java +++ b/core/sis-feature/src/main/java/org/apache/sis/feature/DefaultFeatureType.java @@@ -133,8 -139,8 +133,8 @@@ public class DefaultFeatureType extend * {@code true} if we determined that this feature type does not have, directly or indirectly, * any unresolved name (i.e. a {@link DefaultAssociationRole#valueType} specified only be the * feature type name instead of its actual instance). A value of {@code true} means that all - * names have been resolved. However a value of {@code false} only means that we are not sure, + * names have been resolved. However, a value of {@code false} only means that we are not sure, - * and that {@link #resolve(FeatureType, Map)} should check again. + * and that {@code resolve(FeatureType, Map)} should check again. * * <div class="note"><b>Note:</b> * Strictly speaking, this field should be declared {@code volatile} since the names could diff --cc core/sis-feature/src/main/java/org/apache/sis/feature/EnvelopeOperation.java index bf850e1f90,b6dacc794a..a676adb323 --- a/core/sis-feature/src/main/java/org/apache/sis/feature/EnvelopeOperation.java +++ b/core/sis-feature/src/main/java/org/apache/sis/feature/EnvelopeOperation.java @@@ -100,9 -108,9 +100,9 @@@ final class EnvelopeOperation extends A * a default CRS. * * <h4>Performance note</h4> - * If this array is {@code null}, then {@link Feature#getProperty(String)} does not need to be invoked at all. - * A null array is a signal that invoking only the cheaper {@link Feature#getPropertyValue(String)} method is + * If this array is {@code null}, then {@link AbstractFeature#getProperty(String)} does not need to be invoked at all. + * A null array is a signal that invoking only the cheaper {@link AbstractFeature#getPropertyValue(String)} method is - * sufficient. However this array become non-null as soon as there is at least one CRS characteristic to check. + * sufficient. However, this array become non-null as soon as there is at least one CRS characteristic to check. * We do not distinguish which particular property may have a CRS characteristic because as of Apache SIS 1.0, * implementations of {@link DenseFeature} and {@link SparseFeature} have a "all of nothing" behavior anyway. * So there is no performance gain to expect from a fine-grained knowledge of which properties declare a CRS. diff --cc core/sis-feature/src/main/java/org/apache/sis/feature/Features.java index c12479051f,17f2fce254..11b95de01a --- a/core/sis-feature/src/main/java/org/apache/sis/feature/Features.java +++ b/core/sis-feature/src/main/java/org/apache/sis/feature/Features.java @@@ -139,12 -151,12 +139,12 @@@ public final class Features extends Sta } /* * Operation returns another operation. This case should be rare and should never - * contain a cycle. However given that the consequence of an infinite cycle here + * contain a cycle. However, given that the consequence of an infinite cycle here * would be thread freeze, we check as a safety. */ - final Map<IdentifiedType,Boolean> done = new IdentityHashMap<>(4); - while (!((type = ((Operation) type).getResult()) instanceof AttributeType<?>)) { - if (!(type instanceof Operation) || done.put(type, Boolean.TRUE) != null) { + final Map<AbstractIdentifiedType,Boolean> done = new IdentityHashMap<>(4); + while (!((type = ((AbstractOperation) type).getResult()) instanceof DefaultAttributeType<?>)) { + if (!(type instanceof AbstractOperation) || done.put(type, Boolean.TRUE) != null) { return Optional.empty(); } } diff --cc core/sis-feature/src/main/java/org/apache/sis/internal/feature/MovingFeatures.java index 511efe4ae8,e2dfdb66e9..46f52afd4f --- a/core/sis-feature/src/main/java/org/apache/sis/internal/feature/MovingFeatures.java +++ b/core/sis-feature/src/main/java/org/apache/sis/internal/feature/MovingFeatures.java @@@ -51,10 -52,10 +51,10 @@@ public class MovingFeatures /** * An alternative to {@link #TIME_AS_INSTANTS} used when times cannot be mapped to calendar dates. - * This characteristic uses the same name than {@code TIME_AS_INSTANTS}. Consequently at most one + * This characteristic uses the same name than {@code TIME_AS_INSTANTS}. Consequently, at most one * of {@code TIME_AS_INSTANTS} and {@code TIME_AS_NUMBERS} can be used on the same property. */ - private static final AttributeType<Number> TIME_AS_NUMBERS; + private static final DefaultAttributeType<Number> TIME_AS_NUMBERS; static { final LocalName scope = Names.createLocalName("OGC", null, "MF"); final Map<String,Object> properties = Collections.singletonMap( diff --cc core/sis-feature/src/main/java/org/apache/sis/internal/filter/Visitor.java index 8d57f2d542,7e08dcf92c..a35cb2dc4e --- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/Visitor.java +++ b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/Visitor.java @@@ -263,10 -264,10 +263,10 @@@ public abstract class Visitor<R,A> * This method often needs to be invoked with instances of {@code Filter<? super R>}, * because this is the type of filters returned by GeoAPI methods such as {@link LogicalOperator#getOperands()}. * But the parameterized type expected by this method matches the parameterized type of handlers registered by - * {@link #setFilterHandler(CodeList, BiConsumer)} and similar methods, which use the exact {@code <R>} type. + * {@link #setFilterHandler(Enum, BiConsumer)} and similar methods, which use the exact {@code <R>} type. * This restriction exists because when doing otherwise, parameterized types become hard to express in Java * (we get a cascade of {@code super} keywords, something like {@code <? super ? super R>}). - * However doing the {@code (Filter<R>) filter} cast is actually safe if the handlers do not invoke any + * However, doing the {@code (Filter<R>) filter} cast is actually safe if the handlers do not invoke any * {@code filter} method having a return value (directly or indirectly as list elements) restricted to * the exact {@code <R>} type. Such methods do not exist in the GeoAPI interfaces, so the cast is safe * if the {@link BiConsumer} handlers do not invoke implementation-specific methods. diff --cc core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/citation/DefaultResponsibleParty.java index 53ef3ae4e8,5428b27342..3ee470f80a --- a/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/citation/DefaultResponsibleParty.java +++ b/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/citation/DefaultResponsibleParty.java @@@ -125,8 -112,8 +125,8 @@@ public class DefaultResponsibleParty ex * <li>Otherwise if the given object is already an instance of * {@code DefaultResponsibleParty}, then it is returned unchanged.</li> * <li>Otherwise a new {@code DefaultResponsibleParty} instance is created using the - * {@linkplain #DefaultResponsibleParty(Responsibility) copy constructor} + * {@linkplain #DefaultResponsibleParty(ResponsibleParty) copy constructor} - * and returned. Note that this is a <cite>shallow</cite> copy operation, since the other + * and returned. Note that this is a <dfn>shallow</dfn> copy operation, because the other * metadata contained in the given object are not recursively copied.</li> * </ul> * diff --cc core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/identification/DefaultAggregateInformation.java index 0c5314d34d,d7d4c97117..a279870e63 --- a/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/identification/DefaultAggregateInformation.java +++ b/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/identification/DefaultAggregateInformation.java @@@ -91,18 -89,9 +91,18 @@@ public class DefaultAggregateInformatio public DefaultAggregateInformation() { } + /** + * Constructs a new instance initialized with the values from the specified metadata object. + * + * @param object The metadata to copy values from. + */ + DefaultAggregateInformation(final DefaultAssociatedResource object) { + super(object); + } + /** * Constructs a new instance initialized with the values from the specified metadata object. - * This is a <cite>shallow</cite> copy constructor, since the other metadata contained in the + * This is a <dfn>shallow</dfn> copy constructor, because the other metadata contained in the * given object are not recursively copied. * * @param object the metadata to copy values from, or {@code null} if none. @@@ -124,8 -111,8 +124,8 @@@ * <li>Otherwise if the given object is already an instance of * {@code DefaultAggregateInformation}, then it is returned unchanged.</li> * <li>Otherwise a new {@code DefaultAggregateInformation} instance is created using the - * copy constructor - * and returned. Note that this is a <cite>shallow</cite> copy operation, since the other - * {@linkplain #DefaultAggregateInformation(AssociatedResource) copy constructor} ++ * {@linkplain #DefaultAggregateInformation(AggregateInformation) copy constructor} + * and returned. Note that this is a <dfn>shallow</dfn> copy operation, because the other * metadata contained in the given object are not recursively copied.</li> * </ul> * diff --cc core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/identification/DefaultAssociatedResource.java index 08533071cc,551e2d39e3..8ab487335e --- a/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/identification/DefaultAssociatedResource.java +++ b/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/identification/DefaultAssociatedResource.java @@@ -121,22 -113,9 +121,22 @@@ public class DefaultAssociatedResource this.associationType = associationType; } + /** + * Constructs a new instance initialized with the values from the specified metadata object. + * This is a constructor for {@link DefaultAggregateInformation} constructor only. + * + * @param object The metadata to copy values from. + */ + DefaultAssociatedResource(final DefaultAssociatedResource object) { + this.associationType = object.associationType; + this.initiativeType = object.initiativeType; + this.name = object.name; + this.metadataReference = object.metadataReference; + } + /** * Constructs a new instance initialized with the values from the specified metadata object. - * This is a <cite>shallow</cite> copy constructor, since the other metadata contained in the + * This is a <dfn>shallow</dfn> copy constructor, because the other metadata contained in the * given object are not recursively copied. * * @param object the metadata to copy values from, or {@code null} if none. diff --cc core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/identification/DefaultOperationMetadata.java index 9f8b3eae59,0ce3e6fbeb..1728155a94 --- a/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/identification/DefaultOperationMetadata.java +++ b/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/identification/DefaultOperationMetadata.java @@@ -137,9 -121,25 +137,9 @@@ public class DefaultOperationMetadata e public DefaultOperationMetadata() { } - /** - * Constructs a new operation metadata initialized to the specified values. - * - * @param operationName an unique identifier for this interface. - * @param platform distributed computing platforms on which the operation has been implemented. - * @param connectPoint handle for accessing the service interface. - */ - public DefaultOperationMetadata(final String operationName, - final DistributedComputingPlatform platform, - final OnlineResource connectPoint) - { - this.operationName = operationName; - this.distributedComputingPlatforms = singleton(platform, DistributedComputingPlatform.class); - this.connectPoints = singleton(connectPoint, OnlineResource.class); - } - /** * Constructs a new instance initialized with the values from the specified metadata object. - * This is a <cite>shallow</cite> copy constructor, since the other metadata contained in the + * This is a <dfn>shallow</dfn> copy constructor, because the other metadata contained in the * given object are not recursively copied. * * @param object the metadata to copy values from, or {@code null} if none. diff --cc core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/AbstractElement.java index a3cc791f75,6f67d60fd5..45582a7c17 --- a/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/AbstractElement.java +++ b/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/AbstractElement.java @@@ -284,8 -285,8 +285,8 @@@ public class AbstractElement extends IS * * @see #getEvaluationMethodProperty(Function) */ - private <V> V getMeasureReferenceProperty(final Function<MeasureReference,V> getter) { - final MeasureReference m = getMeasureReference(); + private <V> V getMeasureReferenceProperty(final Function<DefaultMeasureReference,V> getter) { - final DefaultMeasureReference m = measureReference; ++ final DefaultMeasureReference m = getMeasureReference(); return (m != null) && FilterByVersion.LEGACY_METADATA.accept() ? getter.apply(m) : null; } @@@ -318,10 -320,17 +320,14 @@@ if (!FilterByVersion.LEGACY_METADATA.accept()) { return null; } - if (measureReference == null) { - measureReference = new DefaultMeasureReference(); - MeasureReference m = getMeasureReference(); ++ DefaultMeasureReference m = getMeasureReference(); + if (m == null) { + if (state() == State.FINAL) { + return Collections.emptyList(); + } + setMeasureReference(m = new DefaultMeasureReference()); } - return measureReference.getNamesOfMeasure(); - if (m instanceof DefaultMeasureReference) { - return ((DefaultMeasureReference) m).getNamesOfMeasure(); - } - return Collections.unmodifiableCollection(m.getNamesOfMeasure()); ++ return m.getNamesOfMeasure(); } /** @@@ -347,9 -356,10 +353,10 @@@ */ @Override @Deprecated + @Dependencies("getMeasureReference") @XmlElement(name = "measureIdentification", namespace = LegacyNamespaces.GMD) public Identifier getMeasureIdentification() { - return getMeasureReferenceProperty(MeasureReference::getMeasureIdentification); + return getMeasureReferenceProperty(DefaultMeasureReference::getMeasureIdentification); } /** @@@ -373,9 -383,10 +380,10 @@@ */ @Override @Deprecated + @Dependencies("getMeasureReference") @XmlElement(name = "measureDescription", namespace = LegacyNamespaces.GMD) public InternationalString getMeasureDescription() { - return getMeasureReferenceProperty(MeasureReference::getMeasureDescription); + return getMeasureReferenceProperty(DefaultMeasureReference::getMeasureDescription); } /** @@@ -421,8 -432,8 +429,8 @@@ * * @see #getMeasureReferenceProperty(Function) */ - private <V> V getEvaluationMethodProperty(final Function<EvaluationMethod,V> getter) { - final EvaluationMethod m = getEvaluationMethod(); + private <V> V getEvaluationMethodProperty(final Function<DefaultEvaluationMethod,V> getter) { - final DefaultEvaluationMethod m = evaluationMethod; ++ final DefaultEvaluationMethod m = getEvaluationMethod(); return (m != null) && FilterByVersion.LEGACY_METADATA.accept() ? getter.apply(m) : null; } @@@ -450,9 -461,10 +458,10 @@@ */ @Override @Deprecated + @Dependencies("getEvaluationMethod") @XmlElement(name = "evaluationMethodType", namespace = LegacyNamespaces.GMD) public EvaluationMethodType getEvaluationMethodType() { - return getEvaluationMethodProperty(EvaluationMethod::getEvaluationMethodType); + return getEvaluationMethodProperty(DefaultEvaluationMethod::getEvaluationMethodType); } /** @@@ -476,9 -488,10 +485,10 @@@ */ @Override @Deprecated + @Dependencies("getEvaluationMethod") @XmlElement(name = "evaluationMethodDescription", namespace = LegacyNamespaces.GMD) public InternationalString getEvaluationMethodDescription() { - return getEvaluationMethodProperty(EvaluationMethod::getEvaluationMethodDescription); + return getEvaluationMethodProperty(DefaultEvaluationMethod::getEvaluationMethodDescription); } /** @@@ -502,9 -515,10 +512,10 @@@ */ @Override @Deprecated + @Dependencies("getEvaluationMethod") @XmlElement(name = "evaluationProcedure", namespace = LegacyNamespaces.GMD) public Citation getEvaluationProcedure() { - return getEvaluationMethodProperty(EvaluationMethod::getEvaluationProcedure); + return getEvaluationMethodProperty(DefaultEvaluationMethod::getEvaluationProcedure); } /** @@@ -536,10 -550,17 +547,14 @@@ if (!FilterByVersion.LEGACY_METADATA.accept()) { return null; } - if (evaluationMethod == null) { - evaluationMethod = new DefaultEvaluationMethod(); - EvaluationMethod m = getEvaluationMethod(); ++ DefaultEvaluationMethod m = getEvaluationMethod(); + if (m == null) { + if (state() == State.FINAL) { + return Collections.emptyList(); + } + setEvaluationMethod(m = new DefaultEvaluationMethod()); } - return evaluationMethod.getDates(); - if (m instanceof DefaultEvaluationMethod) { - return ((DefaultEvaluationMethod) m).getDates(); - } - return Collections.unmodifiableCollection(m.getDates()); ++ return m.getDates(); } /** diff --cc core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/AbstractTemporalQuality.java index d7df70d3ee,6f10e650c1..4bf707b888 --- a/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/AbstractTemporalQuality.java +++ b/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/AbstractTemporalQuality.java @@@ -100,8 -95,8 +100,8 @@@ public class AbstractTemporalQuality ex * <li>Otherwise if the given object is already an instance of * {@code AbstractTemporalQuality}, then it is returned unchanged.</li> * <li>Otherwise a new {@code AbstractTemporalQuality} instance is created using the - * {@linkplain #AbstractTemporalQuality(TemporalQuality) copy constructor} and returned. + * {@linkplain #AbstractTemporalQuality(TemporalAccuracy) copy constructor} and returned. - * Note that this is a <cite>shallow</cite> copy operation, since the other + * Note that this is a <dfn>shallow</dfn> copy operation, because the other * metadata contained in the given object are not recursively copied.</li> * </ul> * diff --cc core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultCoverageResult.java index c9f5b61e09,4be6b40559..eac6ba4165 --- a/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultCoverageResult.java +++ b/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultCoverageResult.java @@@ -27,14 -27,9 +27,15 @@@ import org.opengis.metadata.distributio import org.opengis.metadata.distribution.DataFile; import org.opengis.metadata.spatial.SpatialRepresentation; import org.opengis.metadata.spatial.SpatialRepresentationType; + import org.apache.sis.internal.jaxb.FilterByVersion; import org.apache.sis.internal.xml.LegacyNamespaces; +// Branch-dependent imports +import org.opengis.annotation.UML; + +import static org.opengis.annotation.Obligation.CONDITIONAL; +import static org.opengis.annotation.Specification.UNSPECIFIED; + /** * Result of a data quality measure organising the measured values as a coverage. diff --cc core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultNonQuantitativeAttributeCorrectness.java index 02d68ee068,fc6de47784..0e9364294d --- a/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultNonQuantitativeAttributeCorrectness.java +++ b/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultNonQuantitativeAttributeCorrectness.java @@@ -91,8 -87,8 +91,8 @@@ public class DefaultNonQuantitativeAttr * <li>Otherwise if the given object is already an instance of * {@code DefaultNonQuantitativeAttributeCorrectness}, then it is returned unchanged.</li> * <li>Otherwise a new {@code DefaultNonQuantitativeAttributeCorrectness} instance is created using the - * {@linkplain #DefaultNonQuantitativeAttributeCorrectness(NonQuantitativeAttributeCorrectness) copy constructor} + * {@linkplain #DefaultNonQuantitativeAttributeCorrectness(NonQuantitativeAttributeAccuracy) copy constructor} - * and returned. Note that this is a <cite>shallow</cite> copy operation, since the other + * and returned. Note that this is a <dfn>shallow</dfn> copy operation, because the other * metadata contained in the given object are not recursively copied.</li> * </ul> * diff --cc core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultUsabilityElement.java index c2ac2a8366,db280848a7..b93e3fba3d --- a/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultUsabilityElement.java +++ b/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultUsabilityElement.java @@@ -89,8 -84,8 +89,8 @@@ public class DefaultUsabilityElement ex * <li>Otherwise if the given object is already an instance of * {@code DefaultUsabilityElement}, then it is returned unchanged.</li> * <li>Otherwise a new {@code DefaultUsabilityElement} instance is created using the - * {@linkplain #DefaultUsabilityElement(UsabilityElement) copy constructor} and returned. + * {@linkplain #DefaultUsabilityElement(Usability) copy constructor} and returned. - * Note that this is a <cite>shallow</cite> copy operation, since the other + * Note that this is a <dfn>shallow</dfn> copy operation, because the other * metadata contained in the given object are not recursively copied.</li> * </ul> * diff --cc core/sis-metadata/src/test/java/org/apache/sis/metadata/iso/constraint/DefaultLegalConstraintsTest.java index b8a86355d5,58012543f8..6bb9b4d7f9 --- a/core/sis-metadata/src/test/java/org/apache/sis/metadata/iso/constraint/DefaultLegalConstraintsTest.java +++ b/core/sis-metadata/src/test/java/org/apache/sis/metadata/iso/constraint/DefaultLegalConstraintsTest.java @@@ -77,8 -78,9 +78,8 @@@ public final strictfp class DefaultLega "<mco:MD_LegalConstraints xmlns:mco=\"" + Namespaces.MCO + "\">\n" + " <mco:useConstraints>\n" + " <mco:MD_RestrictionCode" - + " codeList=\"http://standards.iso.org/iso/19115/resources/Codelist/cat/codelists.xml#MD_RestrictionCode\"" + + " codeList=\"" + ISO_NAMESPACE + "19115/resources/Codelist/cat/codelists.xml#MD_RestrictionCode\"" - + " codeListValue=\"licence\"" - + " codeSpace=\"eng\">Licence</mco:MD_RestrictionCode>\n" + + + " codeListValue=\"licence\">License</mco:MD_RestrictionCode>\n" + " </mco:useConstraints>\n" + "</mco:MD_LegalConstraints>\n"; diff --cc core/sis-metadata/src/test/java/org/apache/sis/metadata/iso/content/DefaultBandTest.java index 5bd0cf1319,04ad0f1553..ec8cc4c1f9 --- a/core/sis-metadata/src/test/java/org/apache/sis/metadata/iso/content/DefaultBandTest.java +++ b/core/sis-metadata/src/test/java/org/apache/sis/metadata/iso/content/DefaultBandTest.java @@@ -47,7 -48,7 +48,7 @@@ public final strictfp class DefaultBand + " </mrc:nominalSpatialResolution>\n" + " <mrc:detectedPolarisation>\n" + " <mrc:MI_PolarisationOrientationCode " // Spell with "s" in 2014 schema. - + "codeList=\"http://standards.iso.org/iso/19115/resources/Codelist/cat/codelists.xml#MI_PolarizationOrientationCode\" codeListValue=\"vertical\">" - + "codeList=\"" + ISO_NAMESPACE + "19115/resources/Codelist/cat/codelists.xml#MI_PolarisationOrientationCode\" codeListValue=\"vertical\">" ++ + "codeList=\"" + ISO_NAMESPACE + "19115/resources/Codelist/cat/codelists.xml#MI_PolarizationOrientationCode\" codeListValue=\"vertical\">" + "Vertical" + "</mrc:MI_PolarisationOrientationCode>\n" + " </mrc:detectedPolarisation>\n" diff --cc core/sis-metadata/src/test/java/org/apache/sis/xml/CharSequenceSubstitutionTest.java index bf4d43a339,78ab9b08b2..4dc4213918 --- a/core/sis-metadata/src/test/java/org/apache/sis/xml/CharSequenceSubstitutionTest.java +++ b/core/sis-metadata/src/test/java/org/apache/sis/xml/CharSequenceSubstitutionTest.java @@@ -31,10 -31,8 +31,11 @@@ import org.apache.sis.test.xml.TestCase import org.junit.Test; import static org.apache.sis.test.MetadataAssert.*; + import static org.apache.sis.internal.metadata.ImplementationHelper.ISO_NAMESPACE; +// Branch-dependent imports +import org.opengis.referencing.ReferenceIdentifier; + /** * Tests the XML marshalling of {@code Anchor} and {@code CodeList} as substitution of {@code <gco:CharacterSequence>}. diff --cc core/sis-referencing/src/main/java/org/apache/sis/referencing/ImmutableIdentifier.java index 8fb5f68d3b,96a04d970b..812d0ecfbb --- a/core/sis-referencing/src/main/java/org/apache/sis/referencing/ImmutableIdentifier.java +++ b/core/sis-referencing/src/main/java/org/apache/sis/referencing/ImmutableIdentifier.java @@@ -338,8 -327,8 +338,8 @@@ public class ImmutableIdentifier extend * <li>Otherwise if the given object is already an instance of * {@code ImmutableIdentifier}, then it is returned unchanged.</li> * <li>Otherwise a new {@code ImmutableIdentifier} instance is created using the - * {@linkplain #ImmutableIdentifier(Identifier) copy constructor} and returned. + * {@linkplain #ImmutableIdentifier(ReferenceIdentifier) copy constructor} and returned. - * Note that this is a <cite>shallow</cite> copy operation, since the other + * Note that this is a <dfn>shallow</dfn> copy operation, because the other * metadata contained in the given object are not recursively copied.</li> * </ul> * diff --cc core/sis-referencing/src/main/java/org/apache/sis/referencing/NamedIdentifier.java index 8c7cdd82ad,c910419159..02745661c1 --- a/core/sis-referencing/src/main/java/org/apache/sis/referencing/NamedIdentifier.java +++ b/core/sis-referencing/src/main/java/org/apache/sis/referencing/NamedIdentifier.java @@@ -340,8 -340,8 +340,8 @@@ public class NamedIdentifier extends Im * <li>Otherwise if the given object is already an instance of * {@code NamedIdentifier}, then it is returned unchanged.</li> * <li>Otherwise a new {@code NamedIdentifier} instance is created using the - * {@linkplain #NamedIdentifier(Identifier) copy constructor} and returned. + * {@linkplain #NamedIdentifier(ReferenceIdentifier) copy constructor} and returned. - * Note that this is a <cite>shallow</cite> copy operation, since the other + * Note that this is a <dfn>shallow</dfn> copy operation, because the other * metadata contained in the given object are not recursively copied.</li> * </ul> * diff --cc core/sis-referencing/src/main/java/org/apache/sis/referencing/crs/AbstractCRS.java index 1f6f83a557,6603f81713..3bfd6f8dd1 --- a/core/sis-referencing/src/main/java/org/apache/sis/referencing/crs/AbstractCRS.java +++ b/core/sis-referencing/src/main/java/org/apache/sis/referencing/crs/AbstractCRS.java @@@ -344,10 -344,10 +344,10 @@@ public class AbstractCRS extends Abstra * Copy properties (scope, domain of validity) except the identifier (e.g. "EPSG:4326") * because the modified CRS is no longer conform to the authoritative definition. * If name contains a namespace (e.g. "EPSG"), remove that namespace for the same reason. - * For example "EPSG:WGS 84" will become simply "WGS 84". + * For example, "EPSG:WGS 84" will become simply "WGS 84". */ Map<String,?> properties = IdentifiedObjects.getProperties(this, IDENTIFIERS_KEY); - Identifier name = getName(); + ReferenceIdentifier name = getName(); if (name.getCodeSpace() != null || name.getAuthority() != null) { name = new NamedIdentifier(null, name.getCode()); final Map<String,Object> copy = new HashMap<>(properties); diff --cc storage/sis-netcdf/src/main/java/org/apache/sis/storage/netcdf/AttributeNames.java index 8990c75ab2,777156f777..6b9de09d8c --- a/storage/sis-netcdf/src/main/java/org/apache/sis/storage/netcdf/AttributeNames.java +++ b/storage/sis-netcdf/src/main/java/org/apache/sis/storage/netcdf/AttributeNames.java @@@ -1158,10 -1158,10 +1158,10 @@@ public class AttributeNames /** * The {@value} attribute name for a URL that gives the location of more complete metadata. - * For example it may be the URL to an ISO 19115 metadata in XML format. + * For example, it may be the URL to an ISO 19115 metadata in XML format. * * <p><b>Path in ISO 19115:</b></p> <ul><li>{@link Metadata} / - * {@link Metadata#getMetadataLinkages() metadataLinkage} / + * {@code metadataLinkage} / * {@link OnlineResource#getLinkage() linkage}</li></ul> * * @see <a href="http://wiki.esipfed.org/index.php/Attribute_Convention_for_Data_Discovery#metadata_link">ESIP reference</a> diff --cc storage/sis-storage/src/main/java/org/apache/sis/internal/storage/MetadataBuilder.java index b354269e19,65cceee3ab..18e4d49f20 --- a/storage/sis-storage/src/main/java/org/apache/sis/internal/storage/MetadataBuilder.java +++ b/storage/sis-storage/src/main/java/org/apache/sis/internal/storage/MetadataBuilder.java @@@ -1999,12 -1996,12 +1999,12 @@@ parse: for (int i = 0; i < length; * * @param type the feature type to add, or {@code null} for no-operation. * @param occurrences number of instances of the given feature type, or a negative value if unknown. - * Note that ISO-19115 considers 0 as an invalid value. Consequently if 0, the feature is not added. + * Note that ISO-19115 considers 0 as an invalid value. Consequently, if 0, the feature is not added. * @return the name of the added feature (even if not added to the metadata), or {@code null} if none. * - * @see FeatureCatalogBuilder#define(FeatureType) + * @see FeatureCatalogBuilder#define(DefaultFeatureType) */ - public final GenericName addFeatureType(final FeatureType type, final long occurrences) { + public final GenericName addFeatureType(final DefaultFeatureType type, final long occurrences) { if (type == null) { return null; } diff --cc storage/sis-storage/src/main/java/org/apache/sis/storage/aggregate/JoinFeatureSet.java index 590fb9ba69,f4a856dcd5..9d7d340da0 --- a/storage/sis-storage/src/main/java/org/apache/sis/storage/aggregate/JoinFeatureSet.java +++ b/storage/sis-storage/src/main/java/org/apache/sis/storage/aggregate/JoinFeatureSet.java @@@ -327,10 -329,10 +327,10 @@@ public class JoinFeatureSet extends Agg * Iterator over the features resulting from the inner or outer join operation. * The {@link #run()} method disposes the resources. */ - private final class Iterator implements Spliterator<Feature>, Consumer<Feature>, Runnable { + private final class Iterator implements Spliterator<AbstractFeature>, Consumer<AbstractFeature>, Runnable { /** * The main stream or a split iterator to close when the {@link #run()} method will be invoked. - * This is initially the stream from which {@link #mainIterator} has been created. However if + * This is initially the stream from which {@link #mainIterator} has been created. However, if * {@link #trySplit()} has been invoked, then this handler may be the other {@code Iterator} * instance which itself contains a reference to the stream to close, thus forming a chain. */ diff --cc storage/sis-xmlstore/src/main/java/org/apache/sis/internal/storage/gpx/Person.java index 8f16893ddf,49df1d9c4b..b0dd51102d --- a/storage/sis-xmlstore/src/main/java/org/apache/sis/internal/storage/gpx/Person.java +++ b/storage/sis-xmlstore/src/main/java/org/apache/sis/internal/storage/gpx/Person.java @@@ -46,9 -52,9 +46,9 @@@ import org.opengis.metadata.citation.Re * Those properties can be read or modified directly. All methods defined in this class are bridges to * the ISO 19115 metadata model and can be ignored if the user only wants to manipulate the GPX model. * - * <p>Note that {@link Party} is an abstract type in ISO 19115 model. We are supposed to implement a subtype - * ({@link org.opengis.metadata.citation.Individual} or {@link org.opengis.metadata.citation.Organisation}). + * <p>Note that {@code Party} is an abstract type in ISO 19115 model. We are supposed to implement a subtype + * ({@code Individual} or {@code Organisation}). - * However the GPX metadata does not specifies whether the "person" is actually an individual or an organization. + * However, the GPX metadata does not specifies whether the "person" is actually an individual or an organization. * In this situation of doubt, we do not select a subtype for avoiding to provide a wrong information.</p> * * @author Johann Sorel (Geomatys)