Package org.joget.plugin.base

Source Code of org.joget.plugin.base.ListOrderedHash

package org.joget.plugin.base;

import freemarker.template.ObjectWrapper;
import freemarker.template.SimpleHash;
import java.util.Map;
import org.apache.commons.collections.SequencedHashMap;
import org.apache.commons.collections.map.ListOrderedMap;

/**
* Modified FreeMarker SimpleHash that supports ordering using ListOrderedMaps.
*/
public class ListOrderedHash extends SimpleHash {

    public ListOrderedHash() {
        super();
    }

    public ListOrderedHash(Map map) {
        super(map);
    }

    public ListOrderedHash(ObjectWrapper wrapper) {
        super(wrapper);
    }

    public ListOrderedHash(Map map, ObjectWrapper wrapper) {
        super(map, wrapper);
    }

    @Override
    protected Map copyMap(Map map) {
        if (map instanceof ListOrderedMap || map.getClass().getName().equals(ListOrderedMap.class.getName())) {
            Map newMap = new ListOrderedMap();
            newMap.putAll(map);
            return newMap;
        } else if (map instanceof SequencedHashMap || map.getClass().getName().equals(SequencedHashMap.class.getName())) {
            Map newMap = new SequencedHashMap();
            newMap.putAll(map);
            return newMap;
        } else {
            return super.copyMap(map);
        }
    }
}
TOP

Related Classes of org.joget.plugin.base.ListOrderedHash

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.