You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tinkerpop.apache.org by "stephen mallette (JIRA)" <ji...@apache.org> on 2016/10/04 16:32:20 UTC

[jira] [Assigned] (TINKERPOP-1486) Improve API of RemoteConnection

     [ https://issues.apache.org/jira/browse/TINKERPOP-1486?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

stephen mallette reassigned TINKERPOP-1486:
-------------------------------------------

    Assignee: stephen mallette

> Improve API of RemoteConnection
> -------------------------------
>
>                 Key: TINKERPOP-1486
>                 URL: https://issues.apache.org/jira/browse/TINKERPOP-1486
>             Project: TinkerPop
>          Issue Type: Improvement
>          Components: language-variant, process
>    Affects Versions: 3.2.2
>            Reporter: Kevin Gallardo
>            Assignee: stephen mallette
>
> Currently an implementor that wants to define a _RemoteConnection_ implementation must return a _RemoteTraversal_ object from the {{RemoteConnection#submit(Bytecode)}} method.
> Thus it needs to implement a specific _RemoteTraversal_ class. When implementing a _RemoteTraversal_ we need to implement the methods {{next()}} and {{hasNext()}}. However these methods never seem to get called. Moreover, we need to implement the method {{nextTraverser()}} which is the one that is actually going to get called, but the method is not abstract and it is not natural to understand that this particular method needs to be implemented.
> It seems like all the other methods of _RemoteTraversal_ are never called as well since it is only used in _RemoteStep_, which only calls {{nextTraverser()}}. I wonder if we could stop using the _RemoteTraversal_ and instead have the {{submit()}} method return a simple abstract class that has:
> - abstract method {{nextTraverser()}} returns _Traverser_
> - abstract method {{getSideEffects()}} returns _SideEffects_
> - possibly extend it later with others



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)