Class TransformedCollection<E>

    • Field Detail

      • transformer

        protected final Transformer<? super E,​? extends E> transformer
        The transformer to use
    • Constructor Detail

      • TransformedCollection

        protected TransformedCollection​(Collection<E> coll,
                                        Transformer<? super E,​? extends E> transformer)
        Constructor that wraps (not copies).

        If there are any elements already in the collection being decorated, they are NOT transformed.

        Parameters:
        coll - the collection to decorate, must not be null
        transformer - the transformer to use for conversion, must not be null
        Throws:
        NullPointerException - if collection or transformer is null
    • Method Detail

      • transformingCollection

        public static <E> TransformedCollection<E> transformingCollection​(Collection<E> coll,
                                                                          Transformer<? super E,​? extends E> transformer)
        Factory method to create a transforming collection.

        If there are any elements already in the collection being decorated, they are NOT transformed. Contrast this with transformedCollection(Collection, Transformer).

        Type Parameters:
        E - the type of the elements in the collection
        Parameters:
        coll - the collection to decorate, must not be null
        transformer - the transformer to use for conversion, must not be null
        Returns:
        a new transformed collection
        Throws:
        NullPointerException - if collection or transformer is null
        Since:
        4.0
      • transformedCollection

        public static <E> TransformedCollection<E> transformedCollection​(Collection<E> collection,
                                                                         Transformer<? super E,​? extends E> transformer)
        Factory method to create a transforming collection that will transform existing contents of the specified collection.

        If there are any elements already in the collection being decorated, they will be transformed by this method. Contrast this with transformingCollection(Collection, Transformer).

        Type Parameters:
        E - the type of the elements in the collection
        Parameters:
        collection - the collection to decorate, must not be null
        transformer - the transformer to use for conversion, must not be null
        Returns:
        a new transformed Collection
        Throws:
        NullPointerException - if collection or transformer is null
        Since:
        4.0
      • transform

        protected E transform​(E object)
        Transforms an object.

        The transformer itself may throw an exception if necessary.

        Parameters:
        object - the object to transform
        Returns:
        a transformed object
      • transform

        protected Collection<E> transform​(Collection<? extends E> coll)
        Transforms a collection.

        The transformer itself may throw an exception if necessary.

        Parameters:
        coll - the collection to transform
        Returns:
        a transformed object