You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tinkerpop.apache.org by "ASF GitHub Bot (JIRA)" <ji...@apache.org> on 2018/09/26 12:37:00 UTC
[jira] [Commented] (TINKERPOP-2040) Improve flexibility of
GroovyTranslator to handle custom types
[ https://issues.apache.org/jira/browse/TINKERPOP-2040?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16628686#comment-16628686 ]
ASF GitHub Bot commented on TINKERPOP-2040:
-------------------------------------------
GitHub user spmallette opened a pull request:
https://github.com/apache/tinkerpop/pull/941
TINKERPOP-2040 Improve flexibility of GroovyTranslator to handle custom types
https://issues.apache.org/jira/browse/TINKERPOP-2040
Handled all of the core GraphSON types in the `GroovyTranslator`. Included a new `TypeTranslator` to allow the behavior of the `ScriptTranslator` to be modified and allowed the `GremlinGroovyScriptEngine` to accept a `TranslatorCustomizer` to allow that custom `TypeTranslator` to be used.
All tests pass with `docker/build.sh -t -i`
VOTE +1
You can merge this pull request into a Git repository by running:
$ git pull https://github.com/apache/tinkerpop TINKERPOP-2040
Alternatively you can review and apply these changes as the patch at:
https://github.com/apache/tinkerpop/pull/941.patch
To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:
This closes #941
----
commit b33c8c683d7e95cfccae07b20dccf54a83b5eba0
Author: Stephen Mallette <sp...@...>
Date: 2018-09-20T15:53:07Z
TINKERPOP-2040 Provide improved type handling for GroovyTranslator
Refactored testing and added support for UUID, Date, Timestamp as well as a method to override standard type handling.
commit 873609bcb23552d033de91282bde3705f729fdc2
Author: Stephen Mallette <sp...@...>
Date: 2018-09-25T17:46:38Z
TINKERPOP-2040 Added more tests to cover more GraphSON types
commit 93d99ef1a0119b4c0994daeccaf312d45c894f45
Author: Stephen Mallette <sp...@...>
Date: 2018-09-25T21:29:49Z
TINKERPOP-2040 Hooked up Customizer for TypeTranslator
Enables the Groovy GremlinScriptEngine to use custom TypeTranslators
----
> Improve flexibility of GroovyTranslator to handle custom types
> --------------------------------------------------------------
>
> Key: TINKERPOP-2040
> URL: https://issues.apache.org/jira/browse/TINKERPOP-2040
> Project: TinkerPop
> Issue Type: Improvement
> Components: groovy
> Affects Versions: 3.2.9
> Reporter: stephen mallette
> Assignee: stephen mallette
> Priority: Major
>
> {{GroovyTranslator}} only handles a set body of types. If for some reason however an object is passed to it in the traversal that it doesn't know how to properly handle you could get an invalid groovy string. It would be good if it could not only handle new types but also override existing ones (not sure why an override would be needed, but does't seem like a wrong thing to allow).
> This change is slightly bigger than {{GroovyTranslator}} though because however the override will take place it will need to be possible to use it within the script engine somehow and right now it is initialized statically.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)