[
https://issues.apache.org/jira/browse/TINKERPOP-2070?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16660414#comment-16660414
]
ASF GitHub Bot commented on TINKERPOP-2070:
-------------------------------------------
jorgebay opened a new pull request #966: TINKERPOP-2070: Introduce Connection
and ResultSet abstractions
URL: https://github.com/apache/tinkerpop/pull/966
https://issues.apache.org/jira/browse/TINKERPOP-2070
Extract `Connection` implementation out of the `DriverRemoteConnection`.
The `DriverRemoteConnection` now uses a `Client` instance, a `Client`
instance may contain one or more `Connection` instances, similar to the Python
and .NET glv.
Introduce `ResultSet` that is aligned to other GLVs:
- `Client` and `Connection` `submit()` methods return a `ResultSet` instance
- `DriverRemoteConnection` submissions returns an instance of
`RemoteTraversal`.
This is a large-ish refactor but it doesn't represent a breaking change for
the user.
Additionally, I've identified an issue when we introduced script submission
support in gremlin-javascript (my bad!): We exposed a property named
`traversers` (see previous code examples). I've maintained that property and
marked it as deprecated, to be removed in 3.4, and updated all code examples to
stop referencing to it.
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
[email protected]
> gremlin-javascript: Introduce Connection representation
> -------------------------------------------------------
>
> Key: TINKERPOP-2070
> URL: https://issues.apache.org/jira/browse/TINKERPOP-2070
> Project: TinkerPop
> Issue Type: Improvement
> Components: javascript
> Affects Versions: 3.3.4
> Reporter: Jorge Bay
> Assignee: Jorge Bay
> Priority: Major
> Fix For: 3.4.0, 3.3.5
>
>
> Currently on gremlin-javascript, {{DriverRemoteConnection}} represents a
> single connection to the server and a {{RemoteConnection}} implementation.
> Like Python and .NET, we need to make the {{DriverRemoteConnection}} use the
> {{Client}} instead of interacting with the websocket directly.
> The dependency tree between classes should be like the following
> {code:java}
> DriverRemoteConnection
> |_ Client
> |_ Connection
> {code}
> These changes don't involve a breaking change, its more of an implementation
> issue. As {{DriverRemoteConnection}} is part of the public API the current
> implementation is a limitation.
> This blocks or at least forces awful workarounds for improvements like
> TINKERPOP-2064.
>
>
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)