001package org.biopax.paxtools.trove;
002
003
004import gnu.trove.map.hash.THashMap;
005import gnu.trove.set.hash.THashSet;
006import org.biopax.paxtools.util.BPCollections;
007
008import java.util.Map;
009import java.util.Set;
010
011/**
012 * A Trove4j based java collections (Set, Map) provider for the paxtools-core BioPAX model.
013 *
014 * Enabled by adding the JVM option:
015 * -Dpaxtools.CollectionProvider=org.biopax.paxtools.trove.TProvider
016 * when running Paxtools or another paxtools-based JAR.
017 */
018public class TProvider implements BPCollections.CollectionProvider
019{
020
021        public <R> Set<R> createSet()
022        {
023                return new THashSet<R>();
024        }
025
026        public <D,R > Map<D,R> createMap()
027        {
028                return new THashMap<D, R>(4);
029        }
030}
031