Uploaded image for project: 'TinkerPop'
  1. TinkerPop
  2. TINKERPOP-1124

Make tinkerpop interfaces expandable

    XMLWordPrintableJSON

    Details

    • Type: Improvement
    • Status: Closed
    • Priority: Major
    • Resolution: Won't Do
    • Affects Version/s: 3.1.1-incubating
    • Fix Version/s: None
    • Component/s: structure
    • Labels:
      None

      Description

      Make the return methods generic so we can specialize them.

      For instance, instead of

      public interface Graph {
       public Iterator<Vertex> vertices(final Object... vertexIds);
      }
      

      move to

      public interface Graph<V extends Vertex> {
       public Iterator<V> vertices(final Object... vertexIds);
      }
      

      That way, orientdb-gremlin (or any other drivers) can expose custom operations on graphs, vertex or edges and even enforce types for things like Element.id() and many other creative stuff.

      That is the way querydsl (http://www.querydsl.com/) found to have a consistent api that can be extended and used in so many different modules.

      This would allow orient-gremlin expose orient specific operations w/o having to expose the implementation.

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                Unassigned
                Reporter:
                velobr Marvin Froeder
              • Votes:
                0 Vote for this issue
                Watchers:
                3 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: