// ============================================================================ // // Copyright (C) 2006-2016 Talend Inc. - www.talend.com // // This source code is available under agreement available at // %InstallDIR%\features\org.talend.rcp.branding.%PRODUCTNAME%\%PRODUCTNAME%license.txt // // You should have received a copy of the agreement // along with this program; if not, write to Talend SA // 9 rue Pages 92150 Suresnes, France // // ============================================================================ package org.talend.dq.indicators.graph; import java.util.HashSet; import java.util.Set; import org.apache.commons.collections.Predicate; import edu.uci.ics.jung.graph.Edge; /** * DOC bZhou class global comment. Detailled comment */ public class EdgeDisplayPredicate implements Predicate { public final static int DEFAULT_WEIGHT = 0; protected GraphBuilder builder; private int degree = 0; private Set<Edge> edges; /** * DOC bZhou EdgeDisplayPredicate constructor comment. */ public EdgeDisplayPredicate(GraphBuilder builder) { this.builder = builder; } /** * DOC bZhou Comment method "filterSmall". * * @param degree */ public void filterSmall(int degree) { edges = new HashSet<Edge>(); this.degree = degree; } /* * (non-Javadoc) * * @see org.apache.commons.collections.Predicate#evaluate(java.lang.Object) */ public boolean evaluate(Object object) { Edge edge = (Edge) object; return builder != null && builder.getEdgeWidth(builder.getEdgeWeight().getNumber(edge).intValue()) > degree; } public Set<Edge> getEdges() { return edges; } }