1 |
55917
|
miriam.bag
|
package eu.dnetlib.data.bulktag;
|
2 |
|
|
|
3 |
56415
|
miriam.bag
|
import com.google.common.reflect.TypeToken;
|
4 |
55917
|
miriam.bag
|
import com.google.gson.Gson;
|
5 |
|
|
import eu.dnetlib.data.bulktag.selectioncriteria.VerbResolver;
|
6 |
|
|
|
7 |
|
|
import java.io.Serializable;
|
8 |
56415
|
miriam.bag
|
import java.lang.reflect.Type;
|
9 |
|
|
import java.util.Collection;
|
10 |
55917
|
miriam.bag
|
import java.util.List;
|
11 |
|
|
import java.util.Map;
|
12 |
|
|
|
13 |
|
|
public class SelectionConstraints implements Serializable {
|
14 |
56415
|
miriam.bag
|
private List<Constraints> criteria;
|
15 |
55917
|
miriam.bag
|
|
16 |
|
|
public SelectionConstraints() {
|
17 |
|
|
}
|
18 |
|
|
|
19 |
56415
|
miriam.bag
|
|
20 |
|
|
public List<Constraints> getCriteria() {
|
21 |
|
|
return criteria;
|
22 |
55917
|
miriam.bag
|
}
|
23 |
|
|
|
24 |
56415
|
miriam.bag
|
public void setCriteria(List<Constraints> criteria) {
|
25 |
|
|
this.criteria = criteria;
|
26 |
55917
|
miriam.bag
|
}
|
27 |
|
|
|
28 |
|
|
public void setSc(String json){
|
29 |
56415
|
miriam.bag
|
Type collectionType = new TypeToken<Collection<Constraints>>(){}.getType();
|
30 |
|
|
criteria = new Gson().fromJson(json, collectionType);
|
31 |
55917
|
miriam.bag
|
}
|
32 |
|
|
|
33 |
56415
|
miriam.bag
|
//Constraints in or
|
34 |
56494
|
miriam.bag
|
public boolean verifyCriteria(final Map<String, List<String>> param){
|
35 |
|
|
for(Constraints selc : criteria) {
|
36 |
55917
|
miriam.bag
|
if(selc.verifyCriteria(param)){
|
37 |
|
|
return true;
|
38 |
|
|
}
|
39 |
|
|
}
|
40 |
|
|
return false;
|
41 |
|
|
}
|
42 |
|
|
public void setSelection(VerbResolver resolver) {
|
43 |
|
|
|
44 |
56415
|
miriam.bag
|
for(Constraints cs : criteria){
|
45 |
55917
|
miriam.bag
|
cs.setSelection(resolver);
|
46 |
|
|
}
|
47 |
|
|
}
|
48 |
|
|
}
|