2019-03-07 18:01:44 +01:00
|
|
|
package org.gcube.data.publishing.gCatFeeder.collectors.dm;
|
2019-03-06 11:13:28 +01:00
|
|
|
|
|
|
|
import java.util.Collections;
|
|
|
|
import java.util.Set;
|
|
|
|
|
2019-03-07 18:01:44 +01:00
|
|
|
import org.gcube.data.publishing.gCatFeeder.collectors.dm.model.InternalAlgorithmDescriptor;
|
2019-03-14 16:58:03 +01:00
|
|
|
import org.gcube.data.publishing.gCatFeeder.model.CatalogueFormatData;
|
2019-03-07 17:29:38 +01:00
|
|
|
import org.gcube.data.publishing.gCatfeeder.collectors.CatalogueRetriever;
|
2019-03-11 18:40:39 +01:00
|
|
|
import org.gcube.data.publishing.gCatfeeder.collectors.CollectorPlugin;
|
2019-03-07 17:29:38 +01:00
|
|
|
import org.gcube.data.publishing.gCatfeeder.collectors.DataCollector;
|
|
|
|
import org.gcube.data.publishing.gCatfeeder.collectors.DataTransformer;
|
|
|
|
import org.gcube.data.publishing.gCatfeeder.collectors.model.PluginDescriptor;
|
|
|
|
import org.gcube.data.publishing.gCatfeeder.collectors.model.faults.CatalogueNotSupportedException;
|
2019-03-06 11:13:28 +01:00
|
|
|
|
2019-03-11 18:40:39 +01:00
|
|
|
public class DataMinerPlugin implements CollectorPlugin<InternalAlgorithmDescriptor> {
|
2019-03-06 11:13:28 +01:00
|
|
|
|
|
|
|
@Override
|
|
|
|
public PluginDescriptor getDescriptor() {
|
|
|
|
// TODO Auto-generated method stub
|
|
|
|
return null;
|
|
|
|
}
|
|
|
|
|
|
|
|
@Override
|
2019-03-14 16:58:03 +01:00
|
|
|
public CatalogueRetriever getRetrieverByCatalogueType(String catalogueType) throws CatalogueNotSupportedException {
|
2019-03-06 11:13:28 +01:00
|
|
|
switch(catalogueType) {
|
2019-03-14 16:58:03 +01:00
|
|
|
case Constants.CKAN_TYPE : return CKANRetriever.get();
|
2019-03-06 11:13:28 +01:00
|
|
|
default : throw new CatalogueNotSupportedException("No support for "+catalogueType);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
@Override
|
2019-03-14 16:58:03 +01:00
|
|
|
public Set<String> getSupportedCatalogueTypes() {
|
|
|
|
return Collections.singleton(Constants.CKAN_TYPE);
|
2019-03-06 11:13:28 +01:00
|
|
|
}
|
|
|
|
|
|
|
|
@Override
|
|
|
|
public DataCollector<InternalAlgorithmDescriptor> getCollector() {
|
|
|
|
return new DMAlgorithmsInfoCollector();
|
|
|
|
}
|
|
|
|
|
2019-03-14 16:58:03 +01:00
|
|
|
@Override
|
|
|
|
public DataTransformer<? extends CatalogueFormatData, InternalAlgorithmDescriptor> getTransformerByCatalogueType(
|
|
|
|
String catalogueType) throws CatalogueNotSupportedException {
|
|
|
|
switch(catalogueType) {
|
|
|
|
case Constants.CKAN_TYPE : return new CKANTransformer();
|
|
|
|
default : throw new CatalogueNotSupportedException("No support for "+catalogueType);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2019-03-06 11:13:28 +01:00
|
|
|
}
|