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

stephen mallette closed TINKERPOP-2050.
---------------------------------------
       Resolution: Done
    Fix Version/s: 3.3.5
                   3.4.0

> Add a :bytecode command to Gremlin Console
> ------------------------------------------
>
>                 Key: TINKERPOP-2050
>                 URL: https://issues.apache.org/jira/browse/TINKERPOP-2050
>             Project: TinkerPop
>          Issue Type: Improvement
>          Components: console
>    Affects Versions: 3.2.9
>            Reporter: Jim Hatcher
>            Assignee: stephen mallette
>            Priority: Minor
>             Fix For: 3.4.0, 3.3.5
>
>
> I am working on a project where there is Java code being written to 
> dynamically generate a Traversal based on a request coming in to an API. You 
> can think of this as a "Traversal Builder."
> The code looks something like this:
> {code:java}
> Traversal<Vertex, Vertex> traversal = g.V();
> if (request.searchByAddress == true) {
>  traversal.hasLabel("address");
>  if (request.address.addressLine1 != null){
>  traversal.has("address_line_1", request.address.addressLine1)
>  }
> }
> etc.
> {code}
> When that code is being debugged, a traversal.toString() is run on the 
> traversal to see the ouptut. This output is Gremlin bytecode.
> It would be nice to have a way to easily see the Gremlin Groovy that was 
> built so that you could take the Groovy, drop it into Studio, make sure it 
> runs, run a profile() on it, and make sure it's efficient.
> I figured out that you can do this by running this code:
> {code:java}
> private String toGremlinGroovyString(Traversal traversal){
>  if (traversal == null){
>  return null;
>  }
> Bytecode bc = traversal.asAdmin().getBytecode();
>  return GroovyTranslator.of("g").translate(bc);
>  }
> {code}
> I think it would be nice to add that as a method on the Traversal class so 
> that it could be used by driver users more easily.
> See comment below for information on the approach taken to help provide 
> support in this area.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to