org.apache.commons.collections.functors

## Class ForClosure

- java.lang.Object
- - org.apache.commons.collections.functors.ForClosure

- All Implemented Interfaces:
    Serializable, Closure

      public class ForClosure
      extends Object
      implements Closure, Serializable

  Closure implementation that calls another closure n times, like a for loop.

  WARNING: from v3.2.2 onwards this class will throw an `UnsupportedOperationException` when trying to serialize or de-serialize an instance to prevent potential remote code execution exploits.

  In order to re-enable serialization support for `ForClosure` the following system property can be used (via -Dproperty=true):

       org.apache.commons.collections.enableUnsafeSerialization

  Since:
    Commons Collections 3.0
  Version:
    $Revision: 1713845 $ $Date: 2015-11-11 15:02:16 +0100 (Wed, 11 Nov 2015) $
  Author:
    Stephen Colebourne
  See Also:
    Serialized Form

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `ForClosure(int count, Closure closure)` Constructor that performs no validation.

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `execute(Object input)` Executes the closure `count` times.
    `Closure` | `getClosure()` Gets the closure.
    `int` | `getCount()` Gets the count.
    `static Closure` | `getInstance(int count, Closure closure)` Factory method that performs validation.

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### ForClosure

          public ForClosure(int count,
                    Closure closure)

      Constructor that performs no validation. Use `getInstance` if you want that.
      Parameters:
        `count` - the number of times to execute the closure
        `closure` - the closure to execute, not null

  - ### Method Detail

    - #### getInstance

          public static Closure getInstance(int count,
                            Closure closure)

      Factory method that performs validation.

      A null closure or zero count returns the `NOPClosure`. A count of one returns the specified closure.

      Parameters:
        `count` - the number of times to execute the closure
        `closure` - the closure to execute, not null
      Returns:
        the `for` closure

    - #### execute

          public void execute(Object input)

      Executes the closure `count` times.
      Specified by:
        `execute` in interface `Closure`
      Parameters:
        `input` - the input object

    - #### getClosure

          public Closure getClosure()

      Gets the closure.
      Returns:
        the closure
      Since:
        Commons Collections 3.1

    - #### getCount

          public int getCount()

      Gets the count.
      Returns:
        the count
      Since:
        Commons Collections 3.1

Copyright © 2001–2015 The Apache Software Foundation. All rights reserved.