diff --git a/src/org.eclipse.ice.viz.service.paraview/META-INF/MANIFEST.MF b/src/org.eclipse.ice.viz.service.paraview/META-INF/MANIFEST.MF index fffcb1e95..1eb617f1c 100644 --- a/src/org.eclipse.ice.viz.service.paraview/META-INF/MANIFEST.MF +++ b/src/org.eclipse.ice.viz.service.paraview/META-INF/MANIFEST.MF @@ -4,8 +4,10 @@ Bundle-Name: ParaView Visualization Service Plugin Bundle-SymbolicName: org.eclipse.ice.viz.service.paraview;singleton:=true Bundle-Version: 2.0.0 Bundle-RequiredExecutionEnvironment: JavaSE-1.7 -Import-Package: org.eclipse.core.runtime.preferences;version="3.3.0", +Import-Package: com.kitware.vtk.web, + org.eclipse.core.runtime.preferences;version="3.3.0", org.eclipse.ice.client.widgets.viz.service, + org.eclipse.ice.datastructures.ICEObject, org.eclipse.ice.datastructures.form, org.eclipse.ice.viz.service, org.eclipse.ice.viz.service.connections, diff --git a/src/org.eclipse.ice.viz.service.paraview/src/org/eclipse/ice/viz/service/connections/paraview/ParaViewConnectionAdapter.java b/src/org.eclipse.ice.viz.service.paraview/src/org/eclipse/ice/viz/service/connections/paraview/ParaViewConnectionAdapter.java new file mode 100644 index 000000000..4fd18e236 --- /dev/null +++ b/src/org.eclipse.ice.viz.service.paraview/src/org/eclipse/ice/viz/service/connections/paraview/ParaViewConnectionAdapter.java @@ -0,0 +1,64 @@ +package org.eclipse.ice.viz.service.connections.paraview; + +import java.util.List; +import java.util.concurrent.ExecutionException; + +import org.eclipse.ice.datastructures.form.Entry; +import org.eclipse.ice.viz.service.connections.ConnectionAdapter; + +import com.kitware.vtk.web.VtkWebClient; +import com.kitware.vtk.web.VtkWebClientHttpImpl; + +public class ParaViewConnectionAdapter extends ConnectionAdapter { + + @Override + protected VtkWebClient openConnection() { + + boolean connected = false; + VtkWebClient client = null; + + try { + client = new VtkWebClientHttpImpl(); + String host = getConnectionProperty("host"); + String port = getConnectionProperty("port"); + String url = "http://" + host + ":" + port + "/rpc-http/"; + connected = client.connect(url).get(); + } catch (InterruptedException e) { + e.printStackTrace(); + } catch (ExecutionException e) { + e.printStackTrace(); + } + + if (!connected) { + client = null; + } + + return client; + } + + @Override + protected boolean closeConnection(VtkWebClient connection) { + connection.close(); + return true; + } + + @Override + public boolean setConnectionProperties(List row) { + // We need to get the following information: + // host + // port + + // TODO Update this when we can launch the server. + + boolean changed = false; + + if (row != null && row.size() >= 3) { + objectName = row.get(0).getValue(); + changed |= setConnectionProperty("host", row.get(1).getValue()); + changed |= setConnectionProperty("port", row.get(2).getValue()); + } + + return changed; + } + +}