gephi/trunk — Issue #415: Exception when duplicating workspace through GraphModel.pushFrom()
Author: mbastian
Created: 2011-10-22 16:46:35+00:00
State: open
Labels: Undecided, Won_t Fix, workspace

Way to reproduce with the toolkit:

1. Follow http://wiki.gephi.org/index.php/Toolkit_-_Metrics_over_time
2. Add the following code to copy a subgraph into a new workspace:

Graph currentGraphView = dynamicGraph.getSnapshotGraph(subinterval);

final Workspace newWorkspace = pc.newWorkspace(pc.getCurrentProject());
GraphModel gm = Lookup.getDefault().lookup(GraphController.class).getModel(newWorkspace);
gm.pushFrom(currentGraphView);

An exception is raised:

java.lang.IllegalArgumentException: The column doesn't exist
at org.gephi.data.attributes.AttributeRowImpl.setValue(AttributeRowImpl.java:73)
at org.gephi.graph.dhns.core.DuplicateManager.duplicateNodeData(DuplicateManager.java:186)
at org.gephi.graph.dhns.core.DuplicateManager.duplicate(DuplicateManager.java:62)
at org.gephi.graph.dhns.core.Dhns.pushFrom(Dhns.java:429)
at org.cnrs.lip6.radarmetrics.Application.execute(Application.java:149)
at org.cnrs.lip6.radarmetrics.Main.main(Main.java:44)

With the debugger, I found that it occurs with the parameters:
index=2
value=TimeInterval

So basically:
NodeDataImpl.getAttributes() returns a row that is unknown by AttributeTableImpl.getColumn().