title: Difference between traversal using gremlin and methods from Graph
body: <p>Suppose I've the following simple graph.</p>
  
  <p><img src="https://i.stack.imgur.com/K9Mhc.jpg" alt="enter image description here"></p>
  
  <p>I see two ways of traversing this graph</p>
  
  <p><strong>Option 1</strong></p>
  
  <p>I can use the following API provided by the <a href="http://www.tinkerpop.com/docs/javadocs/blueprints/2.5.0/index.html?overview-summary.html" rel="nofollow noreferrer">Graph</a> class</p>
  
  <pre><code>Graph factory = ...
  factory.getVertices("type", "Response");
  </code></pre>
  
  <p><strong>Option 2</strong></p>
  
  <p>I can also use <a href="https://github.com/tinkerpop/gremlin/wiki/Using-Gremlin-through-Java" rel="nofollow noreferrer">GremlinPipeline</a> API as documented <a href="https://github.com/tinkerpop/gremlin/wiki/Using-Gremlin-through-Java" rel="nofollow noreferrer">here</a></p>
  
  <pre><code>Graph g = ... // a reference to a Blueprints graph
  GremlinPipeline pipe = new GremlinPipeline();
  pipe.start(g.getVertex(1))
  </code></pre>
  
  <p>My question are</p>
  
  <ul>
  <li>Why two API's?</li>
  <li>When to use which one?</li>
  <li>Does GremlinPipeline take advantage of the indeces created using <a href="http://www.tinkerpop.com/docs/javadocs/blueprints/2.5.0/index.html?overview-summary.html" rel="nofollow noreferrer">index related methods</a> of TnkerGraph?</li>
  </ul>