Package org.zkoss.zkmax.bind.ext

## Class ForwardingCollection<E>

- java.lang.Object
- - org.zkoss.zkmax.bind.ext.ForwardingCollection<E>

- All Implemented Interfaces:
    `java.lang.Iterable<E>`, `java.util.Collection<E>`

      public abstract class ForwardingCollection<E>
      extends java.lang.Object
      implements java.util.Collection<E>

  A collection which forwards all its method calls to another collection. Subclasses should override one or more methods to modify the behavior of the backing collection as desired per the decorator pattern.
  Author:
    Kevin Bourrillion
  See Also:
    ForwardingObject

- - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `ForwardingCollection()` |

  - ### Method Summary

    All Methods Instance Methods Abstract Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `boolean` | `add​(E element)` |
    `boolean` | `addAll​(java.util.Collection<? extends E> collection)` |
    `void` | `clear()` |
    `boolean` | `contains​(java.lang.Object object)` |
    `boolean` | `containsAll​(java.util.Collection<?> collection)` |
    `protected abstract java.util.Collection<E>` | `delegate()` |
    `boolean` | `isEmpty()` |
    `java.util.Iterator<E>` | `iterator()` |
    `boolean` | `remove​(java.lang.Object object)` |
    `boolean` | `removeAll​(java.util.Collection<?> collection)` |
    `boolean` | `retainAll​(java.util.Collection<?> collection)` |
    `int` | `size()` |
    `java.lang.Object[]` | `toArray()` |
    `<T> T[]` | `toArray​(T[] array)` |

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

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

    - ### Methods inherited from interface java.util.Collection

      `equals, hashCode, parallelStream, removeIf, spliterator, stream, toArray`

    - ### Methods inherited from interface java.lang.Iterable

      `forEach`

- - ### Constructor Detail

    - #### ForwardingCollection

          public ForwardingCollection()

  - ### Method Detail

    - #### delegate

          protected abstract java.util.Collection<E> delegate()

    - #### iterator

          public java.util.Iterator<E> iterator()

      Specified by:
        `iterator` in interface `java.util.Collection<E>`
      Specified by:
        `iterator` in interface `java.lang.Iterable<E>`

    - #### size

          public int size()

      Specified by:
        `size` in interface `java.util.Collection<E>`

    - #### removeAll

          public boolean removeAll​(java.util.Collection<?> collection)

      Specified by:
        `removeAll` in interface `java.util.Collection<E>`

    - #### isEmpty

          public boolean isEmpty()

      Specified by:
        `isEmpty` in interface `java.util.Collection<E>`

    - #### contains

          public boolean contains​(java.lang.Object object)

      Specified by:
        `contains` in interface `java.util.Collection<E>`

    - #### toArray

          public java.lang.Object[] toArray()

      Specified by:
        `toArray` in interface `java.util.Collection<E>`

    - #### toArray

          public <T> T[] toArray​(T[] array)

      Specified by:
        `toArray` in interface `java.util.Collection<E>`

    - #### add

          public boolean add​(E element)

      Specified by:
        `add` in interface `java.util.Collection<E>`

    - #### remove

          public boolean remove​(java.lang.Object object)

      Specified by:
        `remove` in interface `java.util.Collection<E>`

    - #### containsAll

          public boolean containsAll​(java.util.Collection<?> collection)

      Specified by:
        `containsAll` in interface `java.util.Collection<E>`

    - #### addAll

          public boolean addAll​(java.util.Collection<? extends E> collection)

      Specified by:
        `addAll` in interface `java.util.Collection<E>`

    - #### retainAll

          public boolean retainAll​(java.util.Collection<?> collection)

      Specified by:
        `retainAll` in interface `java.util.Collection<E>`

    - #### clear

          public void clear()

      Specified by:
        `clear` in interface `java.util.Collection<E>`