This is an automated email from the ASF dual-hosted git repository. desruisseaux pushed a commit to branch geoapi-4.0 in repository https://gitbox.apache.org/repos/asf/sis.git
commit c4a3614aa02b18cbc54b63624605ef8850a77d3a Author: Martin Desruisseaux <martin.desruisse...@geomatys.com> AuthorDate: Sun Oct 29 00:12:05 2023 +0200 Remove deprecated methods. --- .../org.apache.sis.feature/main/module-info.java | 2 +- .../main/org/apache/sis/image/ImageProcessor.java | 151 +-------------------- .../main/org/apache/sis/image/Visualization.java | 12 -- .../main/org/apache/sis/image/package-info.java | 2 +- .../org.apache.sis.metadata/main/module-info.java | 2 +- .../apache/sis/metadata/iso/DefaultMetadata.java | 88 +++--------- .../org/apache/sis/metadata/iso/package-info.java | 2 +- .../DefaultCoordinateOperationFactory.java | 2 +- .../referencing/operation/matrix/MatrixSIS.java | 23 +--- .../referencing/operation/matrix/package-info.java | 2 +- .../provider/FranceGeocentricInterpolation.java | 9 +- .../operation/transform/MathTransforms.java | 18 --- .../src/org.apache.sis.util/main/module-info.java | 2 +- .../main/org/apache/sis/util/ArgumentChecks.java | 66 --------- .../main/org/apache/sis/util/CharSequences.java | 36 +---- .../main/org/apache/sis/util/logging/Logging.java | 18 +-- .../org/apache/sis/util/logging/package-info.java | 2 +- .../apache/sis/gui/internal/ImageConverter.java | 2 +- 18 files changed, 32 insertions(+), 407 deletions(-) diff --git a/endorsed/src/org.apache.sis.feature/main/module-info.java b/endorsed/src/org.apache.sis.feature/main/module-info.java index 09a24df5b4..33a7fd41d2 100644 --- a/endorsed/src/org.apache.sis.feature/main/module-info.java +++ b/endorsed/src/org.apache.sis.feature/main/module-info.java @@ -20,7 +20,7 @@ * * @author Johann Sorel (Geomatys) * @author Martin Desruisseaux (Geomatys) - * @version 1.4 + * @version 1.5 * @since 0.5 */ module org.apache.sis.feature { diff --git a/endorsed/src/org.apache.sis.feature/main/org/apache/sis/image/ImageProcessor.java b/endorsed/src/org.apache.sis.feature/main/org/apache/sis/image/ImageProcessor.java index f0b11ebc5d..2b81da640a 100644 --- a/endorsed/src/org.apache.sis.feature/main/org/apache/sis/image/ImageProcessor.java +++ b/endorsed/src/org.apache.sis.feature/main/org/apache/sis/image/ImageProcessor.java @@ -137,7 +137,7 @@ import org.apache.sis.measure.Units; * * @author Martin Desruisseaux (Geomatys) * @author Alexis Manin (Geomatys) - * @version 1.4 + * @version 1.5 * * @see org.apache.sis.coverage.grid.GridCoverageProcessor * @@ -223,18 +223,6 @@ public class ImageProcessor implements Cloneable { */ private Colorizer colorizer; - /** - * Colors to use for arbitrary categories of sample values. This function can return {@code null} - * or empty arrays for some categories, which are interpreted as fully transparent pixels. - * - * @see #getCategoryColors() - * @see #setCategoryColors(Function) - * - * @deprecated Replaced by {@link #colorizer}. - */ - @Deprecated(since="1.4", forRemoval=true) - private Function<Category,Color[]> colors; - /** * Hints about the desired positional accuracy (in "real world" units or in pixel units), * or {@code null} if unspecified. In order to avoid the need to clone this array in the @@ -403,44 +391,6 @@ public class ImageProcessor implements Cloneable { */ public synchronized void setColorizer(final Colorizer colorizer) { this.colorizer = colorizer; - colors = null; - } - - /** - * Returns the colors to use for given categories of sample values, or {@code null} if unspecified. - * This method returns the function set by the last call to {@link #setCategoryColors(Function)}. - * - * @return colors to use for arbitrary categories of sample values, or {@code null} for default. - * - * @deprecated Replaced by {@link #getColorizer()}. - */ - @Deprecated(since="1.4", forRemoval=true) - public synchronized Function<Category,Color[]> getCategoryColors() { - return colors; - } - - /** - * Sets the colors to use for given categories in image, or {@code null} if unspecified. - * This function provides a way to colorize images without knowing in advance the numerical values of pixels. - * For example, instead of specifying <cite>"pixel value 0 is blue, 1 is green, 2 is yellow"</cite>, - * this function allows to specify <cite>"Lakes are blue, Forests are green, Sand is yellow"</cite>. - * It is still possible however to use numerical values if the function desires to do so, - * since this information is available with {@link Category#getSampleRange()}. - * - * <p>This function is used by methods expecting {@link SampleDimension} arguments such as - * {@link #visualize(RenderedImage, List)}. The given function can return {@code null} or - * empty arrays for some categories, which are interpreted as fully transparent pixels.</p> - * - * @param colors colors to use for arbitrary categories of sample values, or {@code null} for default. - * - * @deprecated Replaced by {@link #setColorizer(Colorizer)}. - */ - @Deprecated(since="1.4", forRemoval=true) - public synchronized void setCategoryColors(final Function<Category,Color[]> colors) { - if (colors != this.colors) { - setColorizer(colors != null ? Colorizer.forCategories(colors) : null); - this.colors = colors; - } } /** @@ -1092,26 +1042,6 @@ public class ImageProcessor implements Cloneable { targetType.toDataBufferType(), colorizer)); } - /** - * @deprecated Replaced by {@link #convert(RenderedImage, NumberRange<?>[], MathTransform1D[], DataType)} - * with a color model inferred from the {@link Colorizer}. - * - * @param colorModel color model of resulting image, or {@code null}. - */ - @SuppressWarnings("doclint:missing") - @Deprecated(since="1.4", forRemoval=true) - public synchronized RenderedImage convert(final RenderedImage source, final NumberRange<?>[] sourceRanges, - MathTransform1D[] converters, final DataType targetType, final ColorModel colorModel) - { - final Colorizer old = colorizer; - try { - colorizer = Colorizer.forInstance(colorModel); - return convert(source, sourceRanges, converters, targetType); - } finally { - colorizer = old; - } - } - /** * Verifies that the given rectangle, if non-null, is non-empty. * This method assumes that the argument name is "bounds". @@ -1255,63 +1185,6 @@ public class ImageProcessor implements Cloneable { return image.isEmpty() ? source : image; } - /** - * Returns an image where all sample values are indices of colors in an {@link IndexColorModel}. - * If the given image stores sample values as unsigned bytes or short integers, then those values - * are used as-is (they are not copied or converted). Otherwise this operation will convert sample - * values to unsigned bytes in order to enable the use of {@link IndexColorModel}. - * - * <p>The given map specifies the color to use for different ranges of values in the source image. - * The ranges of values in the returned image may not be the same; this method is free to rescale them. - * The {@link Color} arrays may have any length; colors will be interpolated as needed for fitting - * the ranges of values in the destination image.</p> - * - * <p>The resulting image is suitable for visualization purposes, but should not be used for computation purposes. - * There is no guarantee about the number of bands in returned image or about which formula is used for converting - * floating point values to integer values.</p> - * - * <h4>Properties used</h4> - * This operation uses the following properties in addition to method parameters: - * <ul> - * <li>(none)</li> - * </ul> - * - * @param source the image to recolor for visualization purposes. - * @param colors colors to use for each range of values in the source image. - * @deprecated Replaced by {@link #visualize(RenderedImage)} with colors map inferred from the {@link Colorizer}. - */ - @SuppressWarnings({"removal", "doclint:missing"}) - @Deprecated(since="1.4", forRemoval=true) - public synchronized RenderedImage visualize(final RenderedImage source, final Map<NumberRange<?>,Color[]> colors) { - /* - * TODO: after removal of this method, search for usages of - * `visualize(RenderedImage, List)` and remove unecessary `(List) null` cast. - */ - ArgumentChecks.ensureNonNull("source", source); - ArgumentChecks.ensureNonNull("colors", colors); - final Colorizer old = colorizer; - try { - colorizer = Colorizer.forRanges(colors); - return visualize(new Visualization.Builder(null, source, null, null)); - } finally { - colorizer = old; - } - } - - /** - * @deprecated Replaced by {@link #visualize(RenderedImage)} with sample dimensions - * read from the {@value PlanarImage#SAMPLE_DIMENSIONS_KEY} property. - * - * @param ranges description of {@code source} bands, or {@code null} if none. This is typically - * obtained by {@link org.apache.sis.coverage.grid.GridCoverage#getSampleDimensions()}. - */ - @SuppressWarnings({"removal", "doclint:missing"}) - @Deprecated(since="1.4", forRemoval=true) - public RenderedImage visualize(final RenderedImage source, final List<SampleDimension> ranges) { - ArgumentChecks.ensureNonNull("source", source); - return visualize(new Visualization.Builder(null, source, null, ranges)); - } - /** * Returns an image where all sample values are indices of colors in an {@link IndexColorModel}. * If the given image stores sample values as unsigned bytes or short integers, then those values @@ -1452,25 +1325,6 @@ public class ImageProcessor implements Cloneable { return visualize(new Visualization.Builder(bounds, source, toSource)); } - /** - * @deprecated Replaced by {@link #visualize(RenderedImage, Rectangle, MathTransform)} with - * sample dimensions read from the {@value PlanarImage#SAMPLE_DIMENSIONS_KEY} property. - * - * @param ranges description of {@code source} bands, or {@code null} if none. This is typically - * obtained by {@link org.apache.sis.coverage.grid.GridCoverage#getSampleDimensions()}. - */ - @SuppressWarnings({"removal", "doclint:missing"}) - @Deprecated(since="1.4", forRemoval=true) - public RenderedImage visualize(final RenderedImage source, final Rectangle bounds, final MathTransform toSource, - final List<SampleDimension> ranges) - { - ArgumentChecks.ensureNonNull("source", source); - ArgumentChecks.ensureNonNull("bounds", bounds); - ArgumentChecks.ensureNonNull("toSource", toSource); - ensureNonEmpty(bounds); - return visualize(new Visualization.Builder(bounds, source, toSource, ranges)); - } - /** * Finishes builder configuration and creates the {@link Visualization} image. */ @@ -1546,7 +1400,6 @@ public class ImageProcessor implements Cloneable { final Number[] fillValues; final ImageLayout layout; final Colorizer colorizer; - final Function<Category,Color[]> colors; final Quantity<?>[] positionalAccuracyHints; synchronized (this) { executionMode = this.executionMode; @@ -1555,7 +1408,6 @@ public class ImageProcessor implements Cloneable { fillValues = this.fillValues; layout = this.layout; colorizer = this.colorizer; - colors = this.colors; positionalAccuracyHints = this.positionalAccuracyHints; } synchronized (other) { @@ -1564,7 +1416,6 @@ public class ImageProcessor implements Cloneable { executionMode.equals(other.executionMode) && interpolation.equals(other.interpolation) && Objects.equals(colorizer, other.colorizer) && - Objects.equals(colors, other.colors) && Arrays.equals(fillValues, other.fillValues) && Arrays.equals(positionalAccuracyHints, other.positionalAccuracyHints); } diff --git a/endorsed/src/org.apache.sis.feature/main/org/apache/sis/image/Visualization.java b/endorsed/src/org.apache.sis.feature/main/org/apache/sis/image/Visualization.java index c86f81909e..401f1a0c3d 100644 --- a/endorsed/src/org.apache.sis.feature/main/org/apache/sis/image/Visualization.java +++ b/endorsed/src/org.apache.sis.feature/main/org/apache/sis/image/Visualization.java @@ -204,18 +204,6 @@ final class Visualization extends ResampledImage { } } - @Deprecated(since="1.4", forRemoval=true) - Builder(final Rectangle bounds, final RenderedImage source, final MathTransform toSource, - final List<SampleDimension> sampleDimensions) - { - this.bounds = bounds; - this.source = source; - this.toSource = toSource; - if (sampleDimensions != null) { - this.sampleDimensions = sampleDimensions.toArray(SampleDimension[]::new); - } - } - /** * Returns an image where all sample values are indices of colors in an {@link IndexColorModel}. * If the source image stores sample values as unsigned bytes or short integers, then those values diff --git a/endorsed/src/org.apache.sis.feature/main/org/apache/sis/image/package-info.java b/endorsed/src/org.apache.sis.feature/main/org/apache/sis/image/package-info.java index aa3380872f..01632fd807 100644 --- a/endorsed/src/org.apache.sis.feature/main/org/apache/sis/image/package-info.java +++ b/endorsed/src/org.apache.sis.feature/main/org/apache/sis/image/package-info.java @@ -42,7 +42,7 @@ * @author Rémi Maréchal (Geomatys) * @author Martin Desruisseaux (Geomatys) * @author Johann Sorel (Geomatys) - * @version 1.4 + * @version 1.5 * @since 1.0 */ package org.apache.sis.image; diff --git a/endorsed/src/org.apache.sis.metadata/main/module-info.java b/endorsed/src/org.apache.sis.metadata/main/module-info.java index 6975678255..8c23031110 100644 --- a/endorsed/src/org.apache.sis.metadata/main/module-info.java +++ b/endorsed/src/org.apache.sis.metadata/main/module-info.java @@ -23,7 +23,7 @@ * @author Martin Desruisseaux (Geomatys) * @author Cédric Briançon (Geomatys) * @author Cullen Rombach (Image Matters) - * @version 1.4 + * @version 1.5 * @since 0.3 */ module org.apache.sis.metadata { diff --git a/endorsed/src/org.apache.sis.metadata/main/org/apache/sis/metadata/iso/DefaultMetadata.java b/endorsed/src/org.apache.sis.metadata/main/org/apache/sis/metadata/iso/DefaultMetadata.java index f8284f41ba..c6d539ae06 100644 --- a/endorsed/src/org.apache.sis.metadata/main/org/apache/sis/metadata/iso/DefaultMetadata.java +++ b/endorsed/src/org.apache.sis.metadata/main/org/apache/sis/metadata/iso/DefaultMetadata.java @@ -141,7 +141,7 @@ import org.opengis.metadata.citation.Responsibility; * @author Touraïvane (IRD) * @author Cédric Briançon (Geomatys) * @author Cullen Rombach (Image Matters) - * @version 1.4 + * @version 1.5 * * @see org.apache.sis.storage.Resource#getMetadata() * @@ -583,41 +583,6 @@ public class DefaultMetadata extends ISOMetadata implements Metadata { */ } - /** - * Returns the language(s) used for documenting metadata. - * The first element in iteration order is the default language. - * All other elements, if any, are alternate language(s) used within the resource. - * - * @return language(s) used for documenting metadata. - * - * @since 0.5 - * - * @deprecated Replaced by <code>{@linkplain #getLocalesAndCharsets()}.keySet()</code>. - */ - @Deprecated(since="1.0", forRemoval=true) - @Dependencies("getLocalesAndCharsets") - public Collection<Locale> getLanguages() { - // TODO: delete after SIS 1.0 release (method not needed by JAXB). - return FilterByVersion.LEGACY_METADATA.accept() ? LocaleAndCharset.getLanguages(getLocalesAndCharsets()) : null; - } - - /** - * Sets the language(s) used for documenting metadata. - * The first element in iteration order shall be the default language. - * All other elements, if any, are alternate language(s) used within the resource. - * - * @param newValues the new languages. - * - * @since 0.5 - * - * @deprecated Replaced by putting keys in {@link #getLocalesAndCharsets()} map. - */ - @Deprecated(since="1.0", forRemoval=true) - public void setLanguages(final Collection<Locale> newValues) { - // TODO: delete after SIS 1.0 release (method not needed by JAXB). - setLocalesAndCharsets(LocaleAndCharset.setLanguages(getLocalesAndCharsets(), newValues)); - } - /** * Returns the default language used for documenting metadata. * @@ -630,11 +595,14 @@ public class DefaultMetadata extends ISOMetadata implements Metadata { @Dependencies("getLocalesAndCharsets") @XmlElement(name = "language", namespace = LegacyNamespaces.GMD) public Locale getLanguage() { - return FilterByVersion.LEGACY_METADATA.accept() ? CollectionsExt.first(getLanguages()) : null; - /* - * No warning if the collection contains more than one locale, because - * this is allowed by the "getLanguage() + getLocales()" contract. - */ + if (FilterByVersion.LEGACY_METADATA.accept()) { + return CollectionsExt.first(LocaleAndCharset.getLanguages(getLocalesAndCharsets())); + /* + * No warning if the collection contains more than one locale, because + * this is allowed by the "getLanguage() + getLocales()" contract. + */ + } + return null; } /** @@ -704,31 +672,11 @@ public class DefaultMetadata extends ISOMetadata implements Metadata { * Returns the character coding standard used for the metadata set. * * @return character coding standards used for the metadata. - * - * @since 0.5 - * - * @deprecated Replaced by <code>{@linkplain #getLocalesAndCharsets()}.values()</code>. - */ - @Deprecated(since="1.0", forRemoval=true) - @Dependencies("getLocalesAndCharsets") - public Collection<Charset> getCharacterSets() { - // TODO: delete after SIS 1.0 release (method not needed by JAXB). - return LocaleAndCharset.getCharacterSets(getLocalesAndCharsets()); - } - - /** - * Sets the character coding standard used for the metadata set. - * - * @param newValues the new character coding standards. - * - * @since 0.5 - * - * @deprecated Replaced by putting values in {@link #getLocalesAndCharsets()} map. */ - @Deprecated(since="1.0", forRemoval=true) - public void setCharacterSets(final Collection<? extends Charset> newValues) { - // TODO: delete after SIS 1.0 release (method not needed by JAXB). - setLocalesAndCharsets(LocaleAndCharset.setCharacterSets(getLocalesAndCharsets(), newValues)); + private Charset getCharacterSets() { + return LegacyPropertyAdapter.getSingleton( + (LocaleAndCharset.getCharacterSets(getLocalesAndCharsets())), + Charset.class, null, DefaultMetadata.class, "getCharacterSet"); } /** @@ -743,8 +691,7 @@ public class DefaultMetadata extends ISOMetadata implements Metadata { @Dependencies("getLocalesAndCharsets") // @XmlElement at the end of this class. public CharacterSet getCharacterSet() { - return CharacterSet.fromCharset(LegacyPropertyAdapter.getSingleton(getCharacterSets(), - Charset.class, null, DefaultMetadata.class, "getCharacterSet")); + return CharacterSet.fromCharset(getCharacterSets()); } /** @@ -756,7 +703,7 @@ public class DefaultMetadata extends ISOMetadata implements Metadata { */ @Deprecated(since="1.0") public void setCharacterSet(final CharacterSet newValue) { - setCharacterSets(CollectionsExt.singletonOrEmpty((newValue != null) ? newValue.toCharset() : null)); + setCharset((newValue != null) ? newValue.toCharset() : null); } /** @@ -1692,8 +1639,7 @@ public class DefaultMetadata extends ISOMetadata implements Metadata { @XmlElement(name = "characterSet", namespace = LegacyNamespaces.GMD) private Charset getCharset() { if (FilterByVersion.LEGACY_METADATA.accept()) { - return LegacyPropertyAdapter.getSingleton(getCharacterSets(), - Charset.class, null, DefaultMetadata.class, "getCharacterSet"); + return getCharacterSets(); } return null; } @@ -1702,7 +1648,7 @@ public class DefaultMetadata extends ISOMetadata implements Metadata { * Sets the character coding standard for the metadata set (used in legacy ISO 19157 format). */ private void setCharset(final Charset newValue) { - setCharacterSets(CollectionsExt.singletonOrEmpty(newValue)); + setLocalesAndCharsets(LocaleAndCharset.setCharacterSets(getLocalesAndCharsets(), CollectionsExt.singletonOrEmpty(newValue))); } /** diff --git a/endorsed/src/org.apache.sis.metadata/main/org/apache/sis/metadata/iso/package-info.java b/endorsed/src/org.apache.sis.metadata/main/org/apache/sis/metadata/iso/package-info.java index 1595a8a237..3c0222547a 100644 --- a/endorsed/src/org.apache.sis.metadata/main/org/apache/sis/metadata/iso/package-info.java +++ b/endorsed/src/org.apache.sis.metadata/main/org/apache/sis/metadata/iso/package-info.java @@ -82,7 +82,7 @@ * @author Touraïvane (IRD) * @author Cédric Briançon (Geomatys) * @author Cullen Rombach (Image Matters) - * @version 1.4 + * @version 1.5 * @since 0.3 */ @XmlSchema(location="https://schemas.isotc211.org/19115/-3/mdb/1.0/mdb.xsd", diff --git a/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/operation/DefaultCoordinateOperationFactory.java b/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/operation/DefaultCoordinateOperationFactory.java index c31ec1a1ef..673b0efef9 100644 --- a/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/operation/DefaultCoordinateOperationFactory.java +++ b/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/operation/DefaultCoordinateOperationFactory.java @@ -353,7 +353,7 @@ public class DefaultCoordinateOperationFactory extends AbstractFactory implement * @deprecated The dimensions attributes have been removed in ISO 19111:2019 revision. */ @Override - @Deprecated(since = "1.4", forRemoval = true) + @Deprecated(since = "1.4") public OperationMethod createOperationMethod(final Map<String,?> properties, final Integer sourceDimensions, final Integer targetDimensions, ParameterDescriptorGroup parameters) throws FactoryException diff --git a/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/operation/matrix/MatrixSIS.java b/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/operation/matrix/MatrixSIS.java index 777601507b..400da6c2c2 100644 --- a/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/operation/matrix/MatrixSIS.java +++ b/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/operation/matrix/MatrixSIS.java @@ -56,7 +56,7 @@ import org.apache.sis.util.resources.Errors; * </ul> * * @author Martin Desruisseaux (IRD, Geomatys) - * @version 1.4 + * @version 1.5 * * @see Matrices * @@ -172,27 +172,6 @@ public abstract class MatrixSIS implements Matrix, LenientComparable, Cloneable, return (value == 0) ? null : value; } - /** - * Retrieves the value at the specified row and column of this matrix, rounded to nearest integer. - * This method may be more accurate than {@link #getElement(int, int)} in some implementations - * when the value is expected to be an integer (for example in conversions of pixel coordinates). - * - * @param row the row index, from 0 inclusive to {@link #getNumRow()} exclusive. - * @param column the column index, from 0 inclusive to {@link #getNumCol()} exclusive. - * @return the current value at the given row and column, rounded to nearest integer. - * @throws IndexOutOfBoundsException if the specified row or column is out of bounds. - * @throws ArithmeticException if the value is NaN or overflows integer capacity. - * - * @since 1.3 - * - * @deprecated Replaced by {@code Numbers.round(getNumber(row, column))}. - * @see Numbers#round(Number) - */ - @Deprecated(since="1.4", forRemoval=true) - public long getInteger(int row, int column) { - return Numbers.round(getNumber(row, column)); - } - /** * Retrieves the value at the specified row and column of this matrix, wrapped in a {@code Number}. * The {@code Number} type depends on the matrix accuracy. diff --git a/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/operation/matrix/package-info.java b/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/operation/matrix/package-info.java index 6ac88bb395..3fb3fd16ab 100644 --- a/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/operation/matrix/package-info.java +++ b/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/operation/matrix/package-info.java @@ -71,7 +71,7 @@ * Like SIS, Vecmath is optimized for small matrices of interest for 2D and 3D graphics.</p> * * @author Martin Desruisseaux (IRD, Geomatys) - * @version 1.4 + * @version 1.5 * @since 0.4 */ package org.apache.sis.referencing.operation.matrix; diff --git a/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/operation/provider/FranceGeocentricInterpolation.java b/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/operation/provider/FranceGeocentricInterpolation.java index 8ecac1c44e..d30f4e86f9 100644 --- a/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/operation/provider/FranceGeocentricInterpolation.java +++ b/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/operation/provider/FranceGeocentricInterpolation.java @@ -86,7 +86,7 @@ import static org.apache.sis.util.internal.Constants.DIM; * @author Martin Desruisseaux (Geomatys) */ @XmlTransient -public class FranceGeocentricInterpolation extends GeodeticOperation { +public final class FranceGeocentricInterpolation extends GeodeticOperation { /** * Serial number for inter-operability with different versions. */ @@ -262,13 +262,6 @@ public class FranceGeocentricInterpolation extends GeodeticOperation { EllipsoidalCS.class, true); } - @Deprecated(forRemoval = true) - FranceGeocentricInterpolation(ParameterDescriptorGroup parameters, int indexOfDim) { - super(Transformation.class, parameters, indexOfDim, - EllipsoidalCS.class, true, - EllipsoidalCS.class, true); - } - /** * Returns {@code true} if the given path seems to be a grid published by the French mapping agency for France. * In principle this <cite>"France geocentric interpolation"</cite> is designed specifically for use with the diff --git a/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/operation/transform/MathTransforms.java b/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/operation/transform/MathTransforms.java index a57c8ccd58..faf302edcb 100644 --- a/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/operation/transform/MathTransforms.java +++ b/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/operation/transform/MathTransforms.java @@ -220,24 +220,6 @@ public final class MathTransforms extends Static { return new ProjectiveTransform(matrix).optimize(); } - /** - * Returns a linear (usually affine) transform which approximates the given transform in the vicinity of the given position. - * - * @param transform the transform to approximate by an affine transform. - * @param position position in source CRS around which to get the an affine transform approximation. - * @return a transform approximating the given transform around the given position. - * @throws TransformException if an error occurred while transforming the given position - * or computing the derivative at that position. - * - * @since 1.0 - * - * @deprecated This method duplicates {@link #tangent(MathTransform, DirectPosition)}. - */ - @Deprecated(since="1.4", forRemoval=true) - public static LinearTransform linear(MathTransform transform, DirectPosition position) throws TransformException { - return tangent(transform, position); - } - /** * Returns a linear (usually affine) transform which approximates the given transform in the vicinity of the given position. * If the given transform is already an instance of {@link LinearTransform}, then it is returned as-is. diff --git a/endorsed/src/org.apache.sis.util/main/module-info.java b/endorsed/src/org.apache.sis.util/main/module-info.java index 60dfbff8cd..4f83c5a36f 100644 --- a/endorsed/src/org.apache.sis.util/main/module-info.java +++ b/endorsed/src/org.apache.sis.util/main/module-info.java @@ -30,7 +30,7 @@ * * @author Martin Desruisseaux (MPO, IRD, Geomatys) * @author Alexis Manin (Geomatys) - * @version 1.4 + * @version 1.5 * @since 0.3 */ module org.apache.sis.util { diff --git a/endorsed/src/org.apache.sis.util/main/org/apache/sis/util/ArgumentChecks.java b/endorsed/src/org.apache.sis.util/main/org/apache/sis/util/ArgumentChecks.java index ed6eaadb12..7fde483705 100644 --- a/endorsed/src/org.apache.sis.util/main/org/apache/sis/util/ArgumentChecks.java +++ b/endorsed/src/org.apache.sis.util/main/org/apache/sis/util/ArgumentChecks.java @@ -236,34 +236,6 @@ public final class ArgumentChecks extends Static { } } - /** - * Ensures that the given {@code values} array is non-null and non-empty. This method can also ensures that all values - * are between the given bounds (inclusive) and are distinct. The distinct values requirement is useful for validating - * arrays of spatiotemporal dimension indices, where dimensions cannot be repeated. - * - * <p>Note that a successful call to {@code ensureNonEmpty(name, values, 0, max, true)} implies - * 1 ≤ {@code values.length} ≤ {@code max}.</p> - * - * @param name the name of the argument to be checked. Used only if an exception is thrown. - * @param values integer values to validate. - * @param min the minimal allowed value (inclusive), or {@link Integer#MIN_VALUE} if none. - * @param max the maximal allowed value (inclusive), or {@link Integer#MAX_VALUE} if none. - * @param distinct {@code true} if each value must be unique. - * @throws NullPointerException if {@code values} is null. - * @throws IllegalArgumentException if {@code values} is empty, contains a value lower than {@code min}, - * contains a value greater than {@code max}, or contains duplicated values while {@code distinct} is {@code true}. - * - * @since 1.0 - * - * @deprecated Replaced by {@link #ensureNonEmptyBounded(String, boolean, int, int, int[])}. - */ - @Deprecated(since = "1.3", forRemoval = true) - public static void ensureNonEmpty(final String name, final int[] values, final int min, final int max, final boolean distinct) - throws IllegalArgumentException - { - ensureNonEmptyBounded(name, distinct, min, max, values); - } - /** * Ensures that the given {@code values} array contains at least one element and that all elements are within bounds. * The minimum and maximum values are inclusive. Optionaly, this method can also ensure that all values are distinct. @@ -320,24 +292,6 @@ public final class ArgumentChecks extends Static { } } - /** - * Ensures that a method receiving a variable number of arguments got the expected count. - * If {@code actual} = {@code expected}, then this method does nothing. - * Otherwise an exception saying "Too few" or "Too many arguments" is thrown. - * - * @param name the name of the argument to be checked. Used only if an exception is thrown. - * @param expected expected number of arguments. - * @param actual actual number of arguments. - * - * @since 1.0 - * - * @deprecated Renamed {@link #ensureCountBetween(String, boolean, int, int, int)}. - */ - @Deprecated(since = "1.3", forRemoval = true) - public static void ensureExpectedCount(final String name, final int expected, final int actual) { - ensureCountBetween(name, false, expected, expected, actual); - } - /** * Ensures that the specified value is null or an instance assignable to the given type. * If this method does not thrown an exception, then the value can be casted to the class @@ -693,26 +647,6 @@ public final class ArgumentChecks extends Static { } } - /** - * Ensures that the given collection size or array length is between the given bounds, inclusive. - * This method performs the same check than {@link #ensureBetween(String, int, int, int) - * ensureBetween(…)}, but the error message is different in case of failure. - * - * @param name the name of the argument to be checked. Used only if an exception is thrown. - * @param min the minimal size (inclusive), or 0 if none. - * @param max the maximal size (inclusive), or {@link Integer#MAX_VALUE} if none. - * @param size the user collection size or array length to be checked. - * @throws IllegalArgumentException if the given value is not in the given range. - * - * @deprecated Renamed {@link #ensureCountBetween(String, boolean, int, int, int)}. - */ - @Deprecated(since = "1.3", forRemoval = true) - public static void ensureSizeBetween(final String name, final int min, final int max, final int size) - throws IllegalArgumentException - { - ensureCountBetween(name, true, min, max, size); - } - /** * Ensures that the given number of elements is between the given bounds, inclusive. * This method performs the same check than {@link #ensureBetween(String, int, int, int) diff --git a/endorsed/src/org.apache.sis.util/main/org/apache/sis/util/CharSequences.java b/endorsed/src/org.apache.sis.util/main/org/apache/sis/util/CharSequences.java index aa2baf7227..235c8e3898 100644 --- a/endorsed/src/org.apache.sis.util/main/org/apache/sis/util/CharSequences.java +++ b/endorsed/src/org.apache.sis.util/main/org/apache/sis/util/CharSequences.java @@ -61,18 +61,13 @@ import static java.lang.Character.*; * {@code isSpaceChar(…)} while most of the rest of the SIS library, including this * {@code CharSequences} class, consistently uses {@code isWhitespace(…)}. * - * <p>Note that the {@link String#trim()} method doesn't follow any of those policies and should - * generally be avoided. That {@code trim()} method removes every ISO control characters without - * distinction about whether the characters are space or not, and ignore all Unicode spaces. - * The {@link #trimWhitespaces(String)} method defined in this class can be used as an alternative.</p> - * * <h2>Handling of null values</h2> * Most methods in this class accept a {@code null} {@code CharSequence} argument. In such cases * the method return value is either a {@code null} {@code CharSequence}, an empty array, or a * {@code 0} or {@code false} primitive type calculated as if the input was an empty string. * * @author Martin Desruisseaux (Geomatys) - * @version 1.1 + * @version 1.5 * * @see StringBuilders * @@ -945,38 +940,11 @@ search: for (; fromIndex <= toIndex; fromIndex++) { return StringBuilders.toASCII(text, null); } - /** - * Returns a string with leading and trailing whitespace characters omitted. - * This method is similar in purpose to {@link String#trim()}, except that the latter considers - * every {@linkplain Character#isISOControl(int) ISO control codes} below 32 to be a whitespace. - * That {@code String.trim()} behavior has the side effect of removing the heading of ANSI escape - * sequences (a.k.a. X3.64), and to ignore Unicode spaces. This {@code trimWhitespaces(…)} method - * is built on the more accurate {@link Character#isWhitespace(int)} method instead. - * - * <p>This method performs the same work than {@link #trimWhitespaces(CharSequence)}, - * but is overloaded for the {@code String} type because of its frequent use.</p> - * - * @param text the text from which to remove leading and trailing whitespaces, or {@code null}. - * @return a string with leading and trailing whitespaces removed, or {@code null} is the given - * text was null. - * - * @deprecated Replaced by {@link String#strip()} in JDK 11. - */ - @Deprecated(since="1.4", forRemoval=true) - public static String trimWhitespaces(String text) { - if (text != null) { - final int length = text.length(); - final int lower = skipLeadingWhitespaces(text, 0, length); - text = text.substring(lower, skipTrailingWhitespaces(text, lower, length)); - } - return text; - } - /** * Returns a text with leading and trailing whitespace characters omitted. * Space characters are identified by the {@link Character#isWhitespace(int)} method. * - * <p>This method is the generic version of {@link #trimWhitespaces(String)}.</p> + * <p>This method is the generalized version of {@link String#strip()}.</p> * * @param text the text from which to remove leading and trailing whitespaces, or {@code null}. * @return a characters sequence with leading and trailing whitespaces removed, diff --git a/endorsed/src/org.apache.sis.util/main/org/apache/sis/util/logging/Logging.java b/endorsed/src/org.apache.sis.util/main/org/apache/sis/util/logging/Logging.java index a2adbe5139..016778e170 100644 --- a/endorsed/src/org.apache.sis.util/main/org/apache/sis/util/logging/Logging.java +++ b/endorsed/src/org.apache.sis.util/main/org/apache/sis/util/logging/Logging.java @@ -43,7 +43,7 @@ import org.apache.sis.system.Configuration; * </ul> * * @author Martin Desruisseaux (Geomatys) - * @version 1.4 + * @version 1.5 * @since 0.3 */ public final class Logging extends Static { @@ -85,22 +85,6 @@ public final class Logging extends Static { return Logger.getLogger(name); } - /** - * Logs the given record to the logger associated to the given class. - * - * @deprecated Replaced by {@code completeAndLog(null, record, classe, method)} for encouraging - * the use of static {@link Logger} constants. Also the new name makes clear that the record is - * modified. - * - * @param classe the class to report as the source of the logging message. - * @param method the method to report as the source of the logging message. - * @param record the record to log. - */ - @Deprecated(since="1.4", forRemoval=true) - public static void log(final Class<?> classe, final String method, final LogRecord record) { - completeAndLog(null, classe, method, record); - } - /** * Completes the properties of the given record, then logs to the specified or inferred logger. * If the {@code logger} argument is {@code null}, the logger is inferred from the other arguments. diff --git a/endorsed/src/org.apache.sis.util/main/org/apache/sis/util/logging/package-info.java b/endorsed/src/org.apache.sis.util/main/org/apache/sis/util/logging/package-info.java index dd768f70ec..3ec72dd984 100644 --- a/endorsed/src/org.apache.sis.util/main/org/apache/sis/util/logging/package-info.java +++ b/endorsed/src/org.apache.sis.util/main/org/apache/sis/util/logging/package-info.java @@ -35,7 +35,7 @@ * {@code jul-to-slf4j.jar} dependency to a project is sufficient for redirecting Java logging to SLF4J. * * @author Martin Desruisseaux (Geomatys) - * @version 1.4 + * @version 1.5 * * @see <a href="https://docs.oracle.com/en/java/javase/18/core/java-logging-overview.html">Java Logging Overview</a> * diff --git a/optional/src/org.apache.sis.gui/main/org/apache/sis/gui/internal/ImageConverter.java b/optional/src/org.apache.sis.gui/main/org/apache/sis/gui/internal/ImageConverter.java index 676ed76de2..dee3937bce 100644 --- a/optional/src/org.apache.sis.gui/main/org/apache/sis/gui/internal/ImageConverter.java +++ b/optional/src/org.apache.sis.gui/main/org/apache/sis/gui/internal/ImageConverter.java @@ -207,7 +207,7 @@ final class ImageConverter extends Task<Statistics[]> { final Object mask = source.getProperty(PlanarImage.MASK_KEY); if (mask instanceof RenderedImage) try { processor.setColorizer(MASK_TRANSPARENCY); - return processor.visualize((RenderedImage) mask, (java.util.List) null); + return processor.visualize((RenderedImage) mask); } catch (IllegalArgumentException e) { /* * Ignore, we will not apply any mask over the thumbnail image.