package org.wikibrain.core.model; import org.wikibrain.core.lang.LanguageSet; import java.util.Iterator; import java.util.Map; /** * * A convienent wrapper for a group of Universal Inlinks or Outlinks. * * @author Ari Weiland * */ public class UniversalLinkGroup implements Iterable<UniversalLink> { //If isOutlink, maps dest id to UniversalLinks //Otherwise maps source id to UniversalLinks private final Map<Integer, UniversalLink> links; private final boolean isOutlink; private final int univId; private final int algorithmId; private final LanguageSet languageSet; public UniversalLinkGroup(Map<Integer, UniversalLink> links, boolean outlink, int univId, int algorithmId, LanguageSet languageSet) { this.links = links; isOutlink = outlink; this.univId = univId; this.algorithmId = algorithmId; this.languageSet = languageSet; } public Map<Integer, UniversalLink> getLinks() { return links; } public boolean isOutlink() { return isOutlink; } public int getUnivId() { return univId; } public int getAlgorithmId() { return algorithmId; } public LanguageSet getLanguageSet() { return languageSet; } @Override public Iterator<UniversalLink> iterator() { return links.values().iterator(); } }