 
   addEdgeDataflow: (nfEdge, dfGraph) ->
     return unless nfEdge
+    return if nfEdge.dataflowEdge
 
     edgeToId = (edge) ->
       if edge.dataflowEdge

      # Reference one another
      node.nofloNode = nofloNode
      nofloNode.dataflowNode = node


    node.on 'change:label', (node, newName) ->
      # Change label

      destination = "#{edge.to.port.toUpperCase()} #{edge.to.node}"
      "#{source} -> #{destination}"

    Edge = @dataflow.module 'edge'
    nfEdge.metadata = {} unless nfEdge.metadata
    dfEdge = new Edge.Model
      id: edgeToId nfEdge
      parentGraph: dfGraph
      source: nfEdge.from
      target: nfEdge.to
      route: ( if nfEdge.metadata.route? then nfEdge.metadata.route else 0 )

    # Reference one another
    dfEdge.nofloEdge = nfEdge
    nfEdge.dataflowEdge = dfEdge

    # Add to Graph
    dfGraph.edges.add dfEdge

  addEdgeRuntime: (edge, runtime) ->
    runtime.sendGraph 'addedge',
