package net.sf.kerner.utils.collections.map.collection.impl;

import java.util.ArrayList;
import java.util.List;

import net.sf.kerner.utils.Factory;
import net.sf.kerner.utils.collections.map.FactoryMap;
import net.sf.kerner.utils.collections.map.collection.MapCollectionAbstract;

public class MapList<K, V> extends MapCollectionAbstract<K, V, List<V>> {

    private final Factory<List<V>> factory;

    public MapList() {
        this.factory = new Factory<List<V>>() {

            public List<V> create() {
                return new ArrayList<V>();
            }
        };
    }

    public MapList(final FactoryMap<K, List<V>> mapFactory, final Factory<List<V>> factory) {
        super(mapFactory);
        this.factory = factory;
    }

    @Override
    protected Factory<List<V>> getFactoryCollection() {
        return factory;
    }

}

@@ -577,24 +577,275 @@
   %7D;%0A    %7D%0A%0A
+    public MapList(final FactoryMap%3CK, List%3CV%3E%3E mapFactory) %7B%0A        super(mapFactory);%0A        this.factory = new Factory%3CList%3CV%3E%3E() %7B%0A%0A            public List%3CV%3E create() %7B%0A                return new ArrayList%3CV%3E();%0A            %7D%0A        %7D;%0A    %7D%0A%0A
     public M

Add MapList#MapList(FactoryMap).