Project

General

Profile

1
package gr.uoa.di.driver.util;
2

    
3
import java.util.HashMap;
4
import java.util.Map;
5

    
6
import eu.dnetlib.api.DriverService;
7
import eu.dnetlib.enabling.tools.registration.ServiceNameResolver;
8

    
9
public class ServiceNameResolverImpl implements ServiceNameResolver {
10
	private Map<Class<?>, String> override = new HashMap<Class<?>, String>();
11

    
12
	@Override
13
	public String getName(Object service) {
14
		return getName(service.getClass());
15
	}
16

    
17
	@Override
18
	public String getName(Class<?> serviceInterface) {
19
		String serviceName = null;
20
		
21
		for (Class<?> i : serviceInterface.getInterfaces()) {
22
			if (DriverService.class.isAssignableFrom(i)) {
23
				if (override.get(i) != null)
24
					serviceName = override.get(i);
25
				else
26
					serviceName = i.getSimpleName();
27
			}
28
		}
29

    
30
		return serviceName;
31
	}
32

    
33
	public Map<Class<?>, String> getOverride() {
34
		return override;
35
	}
36

    
37
	public void setOverride(Map<Class<?>, String> override) {
38
		this.override = override;
39
	}
40
}
(5-5/6)