Project

General

Profile

1
package eu.dnetlib.data.download.plugins;
2

    
3
import com.google.common.base.Function;
4
import com.google.common.collect.Iterables;
5
import com.google.gson.Gson;
6
import eu.dnetlib.data.download.rmi.AbstractDownloadPlugin;
7
import eu.dnetlib.data.download.rmi.DownloadItem;
8
import eu.dnetlib.data.download.rmi.DownloadPlugin;
9

    
10
import java.util.ArrayList;
11
import java.util.List;
12

    
13
public class DummyPlugin extends AbstractDownloadPlugin implements DownloadPlugin {
14

    
15

    
16
    @Override
17
    public void setBasePath(String basePath) {
18

    
19
    }
20

    
21
    @Override
22
    public DownloadItem retrieveUrl(final DownloadItem item) {
23
        if (checkOpenAccess(item) == null) {
24
            return null;
25
        }
26
        if (filterByRegexp(item) == null) return null;
27
        String url = item.getUrl();
28

    
29
        if ((url == null) || (url.trim().length() == 0)) return null;
30
        @SuppressWarnings("unchecked")
31
        List<String> urls = new Gson().fromJson(url, ArrayList.class);
32
        if ((urls == null) || (urls.size() == 0)) {
33
            item.setOriginalUrl(null);
34
            item.setUrl(null);
35
            return item;
36
        }
37
        item.setOriginalUrl(urls.get(0));
38
        item.setUrl(urls.get(0));
39
        return item;
40
    }
41

    
42
    @Override
43
    public Iterable<DownloadItem> retrieveUrls(final Iterable<DownloadItem> items) {
44
        return Iterables.transform(items, new Function<DownloadItem, DownloadItem>() {
45

    
46
            @Override
47
            public DownloadItem apply(final DownloadItem input) {
48
                return retrieveUrl(input);
49
            }
50
        });
51
    }
52

    
53
    @Override
54
    public String getPluginName() {
55
        return "DummyPlugin";
56
    }
57

    
58

    
59
    @Override
60
    public String extractURL(String baseURL) {
61
        return null;
62
    }
63
}
    (1-1/1)