Project

General

Profile

1 26600 sandro.lab
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 40045 sandro.lab
import eu.dnetlib.data.download.rmi.AbstractDownloadPlugin;
7 26600 sandro.lab
import eu.dnetlib.data.download.rmi.DownloadItem;
8
import eu.dnetlib.data.download.rmi.DownloadPlugin;
9
10 40045 sandro.lab
import java.util.ArrayList;
11
import java.util.List;
12 26600 sandro.lab
13 40045 sandro.lab
public class DummyPlugin extends AbstractDownloadPlugin implements DownloadPlugin {
14 26600 sandro.lab
15
16 40045 sandro.lab
    @Override
17
    public void setBasePath(String basePath) {
18 26600 sandro.lab
19 40045 sandro.lab
    }
20 26600 sandro.lab
21 40045 sandro.lab
    @Override
22
    public DownloadItem retrieveUrl(final DownloadItem item) {
23 40492 sandro.lab
        if (checkOpenAccess(item) == null) {
24
            return null;
25
        }
26 40045 sandro.lab
        if (filterByRegexp(item) == null) return null;
27
        String url = item.getUrl();
28 26600 sandro.lab
29 40045 sandro.lab
        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 26600 sandro.lab
42 40045 sandro.lab
    @Override
43
    public Iterable<DownloadItem> retrieveUrls(final Iterable<DownloadItem> items) {
44
        return Iterables.transform(items, new Function<DownloadItem, DownloadItem>() {
45 33251 sandro.lab
46 40045 sandro.lab
            @Override
47
            public DownloadItem apply(final DownloadItem input) {
48
                return retrieveUrl(input);
49
            }
50
        });
51
    }
52 33251 sandro.lab
53 40045 sandro.lab
    @Override
54
    public String getPluginName() {
55
        return "DummyPlugin";
56
    }
57 37568 sandro.lab
58
59 40045 sandro.lab
    @Override
60
    public String extractURL(String baseURL) {
61
        return null;
62
    }
63 26600 sandro.lab
}