Project

General

Profile

1 49184 sandro.lab
package eu.dnetlib.dli.resolver;
2
3
import eu.dnetlib.dli.DLIUtils;
4
import eu.dnetlib.dli.resolver.model.CompletionStatus;
5
import eu.dnetlib.dli.resolver.model.DLIObjectProvenance;
6
import eu.dnetlib.dli.resolver.model.ObjectProvisionMode;
7
import eu.dnetlib.pid.resolver.AbstractPIDResolver;
8
import eu.dnetlib.pid.resolver.model.ObjectProvenance;
9
import org.apache.commons.logging.Log;
10
import org.apache.commons.logging.LogFactory;
11
12
public abstract class DLIPIDResolver extends AbstractPIDResolver {
13
    private static final Log log = LogFactory.getLog(DLIPIDResolver.class);
14
15
16
    public static void setDatasourceProvenance(final ObjectProvenance prov, final String namespacePrefix) {
17
        try {
18
            final DLIObjectProvenance provenance = (DLIObjectProvenance) prov;
19
            provenance.setDatasourceId(DLIUtils.getIdFromDataSourcePrefix(namespacePrefix));
20
            provenance.setDatasource(DLIUtils.getNameFromDataSourcePrefix(namespacePrefix));
21
            provenance.setCompletionStatus(CompletionStatus.complete.toString());
22
            provenance.setProvisionMode(ObjectProvisionMode.resolved.toString());
23
        } catch (Throwable e) {
24
            log.error("Error assigning datasource with nsPrefix: " + namespacePrefix);
25
        }
26
    }
27
28
29
}