You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@commons.apache.org by er...@apache.org on 2019/12/24 12:14:48 UTC

[commons-math] 06/07: MATH-1362: Removed class that is not used anymore within "Commons Math".

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

erans pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/commons-math.git

commit ef4596df33979faac6253056c5f755792a3751ba
Author: Gilles Sadowski <gi...@harfang.homelinux.org>
AuthorDate: Tue Dec 24 13:04:51 2019 +0100

    MATH-1362: Removed class that is not used anymore within "Commons Math".
---
 src/changes/changes.xml                            |   5 +-
 .../org/apache/commons/math4/util/Incrementor.java | 183 ---------------------
 .../apache/commons/math4/util/IncrementorTest.java | 139 ----------------
 3 files changed, 4 insertions(+), 323 deletions(-)

diff --git a/src/changes/changes.xml b/src/changes/changes.xml
index c839678..14d6071 100644
--- a/src/changes/changes.xml
+++ b/src/changes/changes.xml
@@ -54,8 +54,11 @@ If the output is not quite correct, check for invisible trailing spaces!
     </release>
 
     <release version="4.0" date="XXXX-XX-XX" description="">
+      <action dev="erans" type="update" issue="MATH-1362">
+        Removed deprecated class "Incrementor" (replaced by "IntegerSequence.Incrementor").
+      </action>
       <action dev="erans" type="update" issue="MATH-1506">
-        Removed class "MultiDimensionalCounter" (ported to "Commons Numbers").
+        Removed class "MultidimensionalCounter" (ported to "Commons Numbers").
       </action>
       <action dev="erans" type="update" issue="MATH-1504">
         Removed class "BigFraction" (ported to "Commons Numbers").
diff --git a/src/main/java/org/apache/commons/math4/util/Incrementor.java b/src/main/java/org/apache/commons/math4/util/Incrementor.java
deleted file mode 100644
index 0898ec5..0000000
--- a/src/main/java/org/apache/commons/math4/util/Incrementor.java
+++ /dev/null
@@ -1,183 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.commons.math4.util;
-
-import org.apache.commons.math4.exception.MaxCountExceededException;
-import org.apache.commons.math4.exception.NullArgumentException;
-
-/**
- * Utility that increments a counter until a maximum is reached, at
- * which point, the instance will by default throw a
- * {@link MaxCountExceededException}.
- * However, the user is able to override this behaviour by defining a
- * custom {@link MaxCountExceededCallback callback}, in order to e.g.
- * select which exception must be thrown.
- *
- * @since 3.0
- *
- * @deprecated Use {@link IntegerSequence.Incrementor} instead.
- */
-@Deprecated
-public class Incrementor {
-    /**
-     * Upper limit for the counter.
-     */
-    private int maximalCount;
-    /**
-     * Current count.
-     */
-    private int count = 0;
-    /**
-     * Function called at counter exhaustion.
-     */
-    private final MaxCountExceededCallback maxCountCallback;
-
-    /**
-     * Default constructor.
-     * For the new instance to be useful, the maximal count must be set
-     * by calling {@link #setMaximalCount(int) setMaximalCount}.
-     */
-    public Incrementor() {
-        this(0);
-    }
-
-    /**
-     * Defines a maximal count.
-     *
-     * @param max Maximal count.
-     */
-    public Incrementor(int max) {
-        this(max,
-             new MaxCountExceededCallback() {
-                 /** {@inheritDoc} */
-                 @Override
-                public void trigger(int max) throws MaxCountExceededException {
-                     throw new MaxCountExceededException(max);
-                 }
-             });
-    }
-
-    /**
-     * Defines a maximal count and a callback method to be triggered at
-     * counter exhaustion.
-     *
-     * @param max Maximal count.
-     * @param cb Function to be called when the maximal count has been reached.
-     * @throws NullArgumentException if {@code cb} is {@code null}
-     */
-    public Incrementor(int max, MaxCountExceededCallback cb)
-        throws NullArgumentException {
-        if (cb == null){
-            throw new NullArgumentException();
-        }
-        maximalCount = max;
-        maxCountCallback = cb;
-    }
-
-    /**
-     * Sets the upper limit for the counter.
-     * This does not automatically reset the current count to zero (see
-     * {@link #resetCount()}).
-     *
-     * @param max Upper limit of the counter.
-     */
-    public void setMaximalCount(int max) {
-        maximalCount = max;
-    }
-
-    /**
-     * Gets the upper limit of the counter.
-     *
-     * @return the counter upper limit.
-     */
-    public int getMaximalCount() {
-        return maximalCount;
-    }
-
-    /**
-     * Gets the current count.
-     *
-     * @return the current count.
-     */
-    public int getCount() {
-        return count;
-    }
-
-    /**
-     * Checks whether a single increment is allowed.
-     *
-     * @return {@code false} if the next call to {@link #incrementCount(int)
-     * incrementCount} will trigger a {@code MaxCountExceededException},
-     * {@code true} otherwise.
-     */
-    public boolean canIncrement() {
-        return count < maximalCount;
-    }
-
-    /**
-     * Performs multiple increments.
-     * See the other {@link #incrementCount() incrementCount} method).
-     *
-     * @param value Number of increments.
-     * @throws MaxCountExceededException at counter exhaustion.
-     */
-    public void incrementCount(int value) throws MaxCountExceededException {
-        for (int i = 0; i < value; i++) {
-            incrementCount();
-        }
-    }
-
-    /**
-     * Adds one to the current iteration count.
-     * At counter exhaustion, this method will call the
-     * {@link MaxCountExceededCallback#trigger(int) trigger} method of the
-     * callback object passed to the
-     * {@link #Incrementor(int,MaxCountExceededCallback) constructor}.
-     * If not explictly set, a default callback is used that will throw
-     * a {@code MaxCountExceededException}.
-     *
-     * @throws MaxCountExceededException at counter exhaustion, unless a
-     * custom {@link MaxCountExceededCallback callback} has been set at
-     * construction.
-     */
-    public void incrementCount() throws MaxCountExceededException {
-        if (++count > maximalCount) {
-            maxCountCallback.trigger(maximalCount);
-        }
-    }
-
-    /**
-     * Resets the counter to 0.
-     */
-    public void resetCount() {
-        count = 0;
-    }
-
-    /**
-     * Defines a method to be called at counter exhaustion.
-     * The {@link #trigger(int) trigger} method should usually throw an exception.
-     */
-    public interface MaxCountExceededCallback {
-        /**
-         * Function called when the maximal count has been reached.
-         *
-         * @param maximalCount Maximal count.
-         * @throws MaxCountExceededException at counter exhaustion
-         */
-        void trigger(int maximalCount) throws MaxCountExceededException;
-    }
-}
diff --git a/src/test/java/org/apache/commons/math4/util/IncrementorTest.java b/src/test/java/org/apache/commons/math4/util/IncrementorTest.java
deleted file mode 100644
index a28d065..0000000
--- a/src/test/java/org/apache/commons/math4/util/IncrementorTest.java
+++ /dev/null
@@ -1,139 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with this
- * work for additional information regarding copyright ownership. The ASF
- * licenses this file to You under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- * http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law
- * or agreed to in writing, software distributed under the License is
- * distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the specific language
- * governing permissions and limitations under the License.
- */
-package org.apache.commons.math4.util;
-
-import org.apache.commons.math4.exception.MaxCountExceededException;
-import org.apache.commons.math4.exception.TooManyEvaluationsException;
-import org.apache.commons.math4.util.Incrementor;
-import org.junit.Assert;
-import org.junit.Test;
-
-/**
- * Test for {@link Incrementor}.
- */
-public class IncrementorTest {
-    @Test
-    public void testConstructor1() {
-        final Incrementor i = new Incrementor();
-        Assert.assertEquals(0, i.getMaximalCount());
-        Assert.assertEquals(0, i.getCount());
-    }
-
-    @Test
-    public void testConstructor2() {
-        final Incrementor i = new Incrementor(10);
-        Assert.assertEquals(10, i.getMaximalCount());
-        Assert.assertEquals(0, i.getCount());
-    }
-
-    @Test
-    public void testCanIncrement1() {
-        final Incrementor i = new Incrementor(3);
-        Assert.assertTrue(i.canIncrement());
-        i.incrementCount();
-        Assert.assertTrue(i.canIncrement());
-        i.incrementCount();
-        Assert.assertTrue(i.canIncrement());
-        i.incrementCount();
-        Assert.assertFalse(i.canIncrement());
-    }
-
-    @Test
-    public void testCanIncrement2() {
-        final Incrementor i = new Incrementor(3);
-        while (i.canIncrement()) {
-            i.incrementCount();
-        }
-
-        // Must keep try/catch because the exception must be generated here,
-        // and not in the previous loop.
-        try {
-            i.incrementCount();
-            Assert.fail("MaxCountExceededException expected");
-        } catch (MaxCountExceededException e) {
-            // Expected.
-        }
-    }
-
-    @Test
-    public void testAccessor() {
-        final Incrementor i = new Incrementor();
-
-        i.setMaximalCount(10);
-        Assert.assertEquals(10, i.getMaximalCount());
-        Assert.assertEquals(0, i.getCount());
-    }
-
-    @Test
-    public void testBelowMaxCount() {
-        final Incrementor i = new Incrementor();
-
-        i.setMaximalCount(3);
-        i.incrementCount();
-        i.incrementCount();
-        i.incrementCount();
-
-        Assert.assertEquals(3, i.getCount());
-    }
-
-    @Test(expected=MaxCountExceededException.class)
-    public void testAboveMaxCount() {
-        final Incrementor i = new Incrementor();
-
-        i.setMaximalCount(3);
-        i.incrementCount();
-        i.incrementCount();
-        i.incrementCount();
-        i.incrementCount();
-    }
-
-    @Test(expected=TooManyEvaluationsException.class)
-    public void testAlternateException() {
-        final Incrementor.MaxCountExceededCallback cb
-            = new Incrementor.MaxCountExceededCallback() {
-                    /** {@inheritDoc} */
-                    @Override
-                    public void trigger(int max) {
-                        throw new TooManyEvaluationsException(max);
-                    }
-                };
-
-        final Incrementor i = new Incrementor(0, cb);
-        i.incrementCount();
-    }
-
-    @Test
-    public void testReset() {
-        final Incrementor i = new Incrementor();
-
-        i.setMaximalCount(3);
-        i.incrementCount();
-        i.incrementCount();
-        i.incrementCount();
-        Assert.assertEquals(3, i.getCount());
-        i.resetCount();
-        Assert.assertEquals(0, i.getCount());
-    }
-
-    @Test
-    public void testBulkIncrement() {
-        final Incrementor i = new Incrementor();
-
-        i.setMaximalCount(3);
-        i.incrementCount(2);
-        Assert.assertEquals(2, i.getCount());
-        i.incrementCount(1);
-        Assert.assertEquals(3, i.getCount());
-    }
-}