Project

General

Profile

1
package eu.dnetlib.data.cleaner;
2

    
3
import org.springframework.beans.factory.annotation.Autowired;
4
import org.springframework.beans.factory.annotation.Required;
5

    
6
import eu.dnetlib.enabling.resultset.factory.ResultSetFactory;
7
import eu.dnetlib.enabling.tools.AbstractBaseService;
8
import eu.dnetlib.rmi.common.ResultSet;
9
import eu.dnetlib.rmi.data.CleanerException;
10
import eu.dnetlib.rmi.data.CleanerService;
11

    
12
public class CleanerServiceImpl extends AbstractBaseService implements CleanerService {
13

    
14
	private CleaningRuleFactory cleaningRuleFactory;
15

    
16
	@Autowired
17
	private ResultSetFactory resultSetFactory;
18

    
19
	@Override
20
	public ResultSet<String> clean(final ResultSet<String> rs, final String ruleId) throws CleanerException {
21
		if ((ruleId == null) || (ruleId.isEmpty())) { throw new CleanerException("Invalid ruleId: id is empty"); }
22
		if (rs == null) { throw new CleanerException("Passed rs is null"); }
23

    
24
		return this.resultSetFactory.map(rs, String.class, this.cleaningRuleFactory.obtainCleaningRule(ruleId));
25
	}
26

    
27
	public CleaningRuleFactory getCleaningRuleFactory() {
28
		return this.cleaningRuleFactory;
29
	}
30

    
31
	@Required
32
	public void setCleaningRuleFactory(final CleaningRuleFactory cleaningRuleFactory) {
33
		this.cleaningRuleFactory = cleaningRuleFactory;
34
	}
35

    
36
	public ResultSetFactory getResultSetFactory() {
37
		return this.resultSetFactory;
38
	}
39

    
40
	public void setResultSetFactory(final ResultSetFactory resultSetFactory) {
41
		this.resultSetFactory = resultSetFactory;
42
	}
43

    
44
}
(1-1/6)