Project

General

Profile

1
package eu.dnetlib.msro.workflows.hadoop.utils;
2

    
3
import java.util.List;
4

    
5
import com.google.common.collect.Lists;
6

    
7
import eu.dnetlib.data.proto.TypeProtos.Type;
8
import eu.dnetlib.miscutils.collections.Pair;
9

    
10
public class SimilarityMeshBuilder {
11

    
12
	public static List<Similarity> build(final Type type, final List<String> list) {
13

    
14
		return build(type, list, true);
15
	}
16

    
17
	public static List<Similarity> build(final Type type, final List<String> list, final boolean addTypePrefix) {
18
		final String typePrefix = String.valueOf(type.getNumber());
19
		final List<Similarity> res = Lists.newArrayList();
20
		for (int i = 0; i < list.size(); i++) {
21
			for (int j = 0; j < list.size(); j++) {
22

    
23
				if (!list.get(i).equals(list.get(j))) {
24

    
25
					final String source = addTypePrefix ? typePrefix + "|" + list.get(i) : list.get(i);
26
					final String target = addTypePrefix ? typePrefix + "|" + list.get(j) : list.get(j);
27

    
28
					res.add(new Similarity(new Pair<String, String>(source, target), type));
29
				}
30
			}
31
		}
32
		return res;
33
	}
34
}
(2-2/2)