← Back to team overview

gephi.team team mailing list archive

[Merge] lp:~elishowk-nonutc/gephi/neo4j-plugin into lp:~gephi.team/gephi/neo4j-plugin

 

elishowk has proposed merging lp:~elishowk-nonutc/gephi/neo4j-plugin into lp:~gephi.team/gephi/neo4j-plugin.

Requested reviews:
  Gephi Team (gephi.team)

For more details, see:
https://code.launchpad.net/~elishowk-nonutc/gephi/neo4j-plugin/+merge/47673

patch for edges "weight" attributes to be converted to Float, to be Gephi GraphAPI compliant :

private void fillGephiEdgeDataWithNeoRelationshipData(Edge gephiEdge, Relationship neoRelationship) {
        AttributeTable edgeTable = attributeModel.getEdgeTable();
        Attributes attributes = gephiEdge.getEdgeData().getAttributes();

        Object neoRelationshipId = neoRelationship.getId();
        for (String neoPropertyKey : neoRelationship.getPropertyKeys()) {
            Object neoPropertyValue = neoRelationship.getProperty(neoPropertyKey);
            if (neoPropertyKey.equalsIgnoreCase("weight")) {
                if (neoPropertyValue instanceof Integer) {
                    neoPropertyValue = ((Integer) neoPropertyValue).floatValue();
                }
            }

        }
[...]
}
-- 
https://code.launchpad.net/~elishowk-nonutc/gephi/neo4j-plugin/+merge/47673
Your team Gephi Team is requested to review the proposed merge of lp:~elishowk-nonutc/gephi/neo4j-plugin into lp:~gephi.team/gephi/neo4j-plugin.
=== modified file 'Neo4jPlugin/src/org/gephi/neo4j/plugin/impl/GraphModelImportConverter.java'
--- Neo4jPlugin/src/org/gephi/neo4j/plugin/impl/GraphModelImportConverter.java	2010-12-23 13:14:16 +0000
+++ Neo4jPlugin/src/org/gephi/neo4j/plugin/impl/GraphModelImportConverter.java	2011-01-27 15:50:31 +0000
@@ -133,8 +133,8 @@
         graph.addNode(gephiNode);
 
         fillGephiNodeDataWithNeoNodeData(gephiNode, neoNode);
-        currentNeo4jModel.neo4jToGephiNodeMap.put(neoNode  .getId(), gephiNode.getId());
-        currentNeo4jModel.gephiToNeo4jNodeMap.put(gephiNode.getId(), neoNode  .getId());
+        currentNeo4jModel.neo4jToGephiNodeMap.put(neoNode.getId(), gephiNode.getId());
+        currentNeo4jModel.gephiToNeo4jNodeMap.put(gephiNode.getId(), neoNode.getId());
     }
 
     private void fillGephiNodeDataWithNeoNodeData(org.gephi.graph.api.Node gephiNode, org.neo4j.graphdb.Node neoNode) {
@@ -193,47 +193,137 @@
         Object neoRelationshipId = neoRelationship.getId();
         for (String neoPropertyKey : neoRelationship.getPropertyKeys()) {
             Object neoPropertyValue = neoRelationship.getProperty(neoPropertyKey);
-            if (!edgeTable.hasColumn(neoPropertyKey)) {
-                if (!neoPropertyValue.getClass().isArray()) {
-                    edgeTable.addColumn(neoPropertyKey, neoPropertyKey, AttributeType.parse(neoPropertyValue), Neo4jDelegateProviderImpl.getInstance(), null);
-                } else {
-                    AttributeType attributeType =
-                            Neo4jArrayToGephiAttributeTypeMapper.map(neoPropertyValue);
-
-                    edgeTable.addColumn(neoPropertyKey, neoPropertyKey, attributeType, Neo4jDelegateProviderImpl.getInstance(), null);
+            if (neoPropertyKey.equalsIgnoreCase("weight")) {
+                if (neoPropertyValue instanceof Integer) {
+                    neoPropertyValue = ((Integer) neoPropertyValue).floatValue();
                 }
             }
 
-            if (edgeTable.getColumn(neoPropertyKey).getOrigin() == AttributeOrigin.DELEGATE) {
-                attributes.setValue(neoPropertyKey, neoRelationshipId);
+        }
+        if (!edgeTable.hasColumn(neoPropertyKey)) {
+            if (!neoPropertyValue.getClass().isArray()) {
+                edgeTable.addColumn(neoPropertyKey, neoPropertyKey, AttributeType.parse(neoPropertyValue), Neo4jDelegateProviderImpl.getInstance(), null);
             } else {
-                attributes.setValue(neoPropertyKey, neoPropertyValue);
+                AttributeType attributeType =
+                        Neo4jArrayToGephiAttributeTypeMapper.map(neoPropertyValue);
+
+                edgeTable.addColumn(neoPropertyKey, neoPropertyKey, attributeType, Neo4jDelegateProviderImpl.getInstance(), null);
             }
         }
-
-        attributes.setValue(PropertiesColumn.NEO4J_RELATIONSHIP_TYPE.getId(), neoRelationshipId);
+        if (edgeTable.getColumn(neoPropertyKey).getOrigin() == AttributeOrigin.DELEGATE) {
+            attributes.setValue(neoPropertyKey, neoRelationshipId);
+        } else {
+            attributes.setValue(neoPropertyKey, neoPropertyValue);
+        }
     }
 
-    public void createNeo4jRelationshipTypeGephiColumn() {
+    attributes.setValue (PropertiesColumn.NEO4J_RELATIONSHIP_TYPE.getId
+
+
+
+
+
+(), neoRelationshipId);
+
+
+}
+
+    public void
+
+createNeo4jRelationshipTypeGephiColumn() {
         PropertiesColumn propertiesColumn = PropertiesColumn.NEO4J_RELATIONSHIP_TYPE;
 
-        attributeModel.getEdgeTable().addColumn(propertiesColumn.getId(),
+        attributeModel.
+
+getEdgeTable().addColumn(propertiesColumn.getId(),
                 propertiesColumn.getTitle(),
                 AttributeType.STRING,
                 Neo4jDelegateProviderImpl.getInstance(),
                 null);
-    }
-
-    public static GraphDatabaseService getGraphDBForCurrentWorkspace() {
+
+
+
+
+
+
+}
+
+    public static GraphDatabaseService
+
+
+
+
+
+getGraphDBForCurrentWorkspace() {
         Neo4jGraphModel neo4jmodel = getNeo4jModelForCurrentWorkspace();
 
-        return neo4jmodel != null ? neo4jmodel.graphDb
+
+
+
+
+
+
+return neo4jmodel != null ? neo4jmodel.graphDb
                                   : null;
-    }
-
-    public static Neo4jGraphModel getNeo4jModelForCurrentWorkspace() {
+
+
+
+
+
+
+}
+
+    public static Neo4jGraphModel
+
+
+
+
+
+
+
+
+
+
+
+    getNeo4jModelForCurrentWorkspace() {
         Workspace currentWorkspace = Lookup.getDefault().lookup(ProjectController.class).getCurrentWorkspace();
-        return currentWorkspace.getLookup().lookup(Neo4jGraphModel.class);
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+               return currentWorkspace.getLookup().lookup(Neo4jGraphModel.class);
     }
 
     static Collection<GraphDatabaseService> getAllGraphDBs() {


Follow ups