Class TypedBag


  • public class TypedBag
    extends Object
    Decorates another Bag to validate that elements added are of a specific type.

    The validation of additions is performed via an instanceof test against a specified Class. If an object cannot be added to the collection, an IllegalArgumentException is thrown.

    Since:
    Commons Collections 3.0
    Version:
    $Revision: 646777 $ $Date: 2008-04-10 14:33:15 +0200 (Thu, 10 Apr 2008) $
    Author:
    Stephen Colebourne, Matthew Hawthorne
    • Constructor Detail

      • TypedBag

        protected TypedBag()
        Restrictive constructor.
    • Method Detail

      • decorate

        public static Bag decorate​(Bag bag,
                                   Class type)
        Factory method to create a typed bag.

        If there are any elements already in the bag being decorated, they are validated.

        Parameters:
        bag - the bag to decorate, must not be null
        type - the type to allow into the bag, must not be null
        Returns:
        a new typed Bag
        Throws:
        IllegalArgumentException - if bag or type is null
        IllegalArgumentException - if the bag contains invalid elements