package org.cytoscape.rest.internal.reader;
import java.io.InputStream;
import org.cytoscape.io.CyFileFilter;
import org.cytoscape.io.read.AbstractInputStreamTaskFactory;
import org.cytoscape.model.CyNetworkFactory;
import org.cytoscape.model.CyNetworkManager;
import org.cytoscape.model.subnetwork.CyRootNetworkManager;
import org.cytoscape.view.model.CyNetworkViewFactory;
import org.cytoscape.work.TaskIterator;
/**
* Factory for Edge List reader objects.
*
*/
public class EdgeListReaderFactory extends AbstractInputStreamTaskFactory {
private final CyNetworkViewFactory cyNetworkViewFactory;
private final CyNetworkFactory cyNetworkFactory;
private final CyNetworkManager cyNetworkManager;;
private final CyRootNetworkManager cyRootNetworkManager;
public EdgeListReaderFactory(CyFileFilter filter, CyNetworkViewFactory cyNetworkViewFactory,
CyNetworkFactory cyNetworkFactory, final CyNetworkManager cyNetworkManager,
CyRootNetworkManager cyRootNetworkManager) {
super(filter);
this.cyNetworkManager = cyNetworkManager;
this.cyRootNetworkManager = cyRootNetworkManager;
this.cyNetworkFactory = cyNetworkFactory;
this.cyNetworkViewFactory = cyNetworkViewFactory;
}
@Override
public TaskIterator createTaskIterator(InputStream inputStream, String collectionName) {
return new TaskIterator(new EdgeListReader(inputStream, cyNetworkViewFactory, cyNetworkFactory,
this.cyNetworkManager, this.cyRootNetworkManager, collectionName));
}
}