Project

General

Profile

1
package eu.dnetlib.dli.resolver;
2

    
3
import eu.dnetlib.dli.resolver.model.ResolvedObject;
4
import org.apache.commons.logging.Log;
5
import org.apache.commons.logging.LogFactory;
6
import org.springframework.beans.factory.annotation.Autowired;
7

    
8
/**
9
 * The Class RCBSResolver.
10
 *
11
 * @author sandro
12
 */
13
public class RCSBResolver extends AbstractPIDResolver {
14

    
15
	/**
16
	 * The Constant log.
17
	 */
18
	private static final Log log = LogFactory.getLog(RCSBResolver.class); // NOPMD by marko on 11/24/08 5:02 PM
19

    
20
	/**
21
	 * The template url.
22
	 */
23
	private static String TEMPLATE_URL =
24
			"http://www.rcsb.org/pdb/rest/customReport?pdbids=%s&customReportColumns=structureTitle,structureAuthor,releaseDate&service=wsfile";
25

    
26
	/**
27
	 * The rcbs parser.
28
	 */
29
	@Autowired
30
	private RCSBParser rcsbParser;
31

    
32
	@Override
33
	protected boolean canResolvePid(final String pidType) {
34
		return pidType != null && pidType.toLowerCase().trim().equals("pdb");
35
	}
36

    
37
	@Override
38
	protected ResolvedObject resolve(final String pid, final String pidType) {
39
		String URL = String.format(TEMPLATE_URL, pid);
40
		return rcsbParser.parseRecord(requestURL(URL));
41
	}
42

    
43
}
(13-13/14)