package org.cytoscape.d3.internal.writer; import java.io.OutputStream; import org.cytoscape.io.CyFileFilter; import org.cytoscape.io.write.CyNetworkViewWriterFactory; import org.cytoscape.io.write.CyWriter; import org.cytoscape.model.CyNetwork; import org.cytoscape.view.model.CyNetworkView; import com.fasterxml.jackson.databind.ObjectMapper; /** * Create Writers for given data type (View or Network) * */ public class D3NetworkWriterFactory implements CyNetworkViewWriterFactory { private final CyFileFilter filter; private final ObjectMapper mapper; public D3NetworkWriterFactory(final CyFileFilter filter, final ObjectMapper mapper) { this.filter = filter; this.mapper = mapper; } @Override public CyWriter createWriter(OutputStream outputStream, CyNetworkView view) { return new D3NetworkViewWriter(outputStream, view, mapper); } @Override public CyWriter createWriter(OutputStream outputStream, CyNetwork network) { return new D3NetworkWriter(outputStream, network, mapper); } @Override public CyFileFilter getFileFilter() { return filter; } }