Details

    • Type: Improvement
    • Status: Resolved
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: None
    • Component/s: graph
    • Labels:
      None

      Description

      The current vertex API only supports simple graphs, meaning that there can only ever be one edge between two vertices. Many graphs like the road network are in fact multigraphs, where many edges can connect two vertices at the same time.

      Support for this could be added by introducing an Iterator<EdgeWritable> getEdgeValue() or a similar construct. Maybe introducing a slim object like a Connector between the edge and the vertex is also a good idea, so that you could do something like:

       
      for (final Connector<EdgeWritable, VertexWritable> conn: getEdgeValues(){
           final EdgeWritable edge = conn.getEdge();
           final VertexWritable otherVertex = conn.getOther();
           doInterestingStuff(otherVertex);
           doMoreInterestingStuff(edge);
      }
      

        Attachments

        1. GIRAPH-141.patch
          117 kB
          Alessandro Presta
        2. GIRAPH-141.patch
          117 kB
          Alessandro Presta
        3. GIRAPH-141.patch
          122 kB
          Alessandro Presta
        4. GIRAPH-141.patch
          145 kB
          Alessandro Presta
        5. GIRAPH-141.patch
          145 kB
          Alessandro Presta
        6. GIRAPH-141.patch
          145 kB
          Alessandro Presta
        7. GIRAPH-141.patch
          145 kB
          Alessandro Presta

          Issue Links

            Activity

              People

              • Assignee:
                apresta Alessandro Presta
                Reporter:
                fs111 André Kelpe
              • Votes:
                0 Vote for this issue
                Watchers:
                9 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: