test_class.file: artemis-graph/src/test/java/org/jnosql/artemis/graph/AbstractGraphTemplateTest.java
test_class.identifier: AbstractGraphTemplateTest
test_case.body: @Test
      public void shouldReturnEmpty() {
          Optional<Person> person = getGraphTemplate().singleResult("g.V().hasLabel('Person')");
          assertFalse(person.isPresent());
      }
test_case.class_method_signature: AbstractGraphTemplateTest.shouldReturnEmpty()
test_case.full_signature: @Test public void shouldReturnEmpty()
test_case.identifier: shouldReturnEmpty
test_case.invocations: singleResult getGraphTemplate assertFalse isPresent
test_case.modifiers: @Test public
test_case.parameters: ()
test_case.return: void
test_case.signature: void shouldReturnEmpty()
focal_class.declarator: INITIAL_VERTEX =
              g -> (GraphTraversal<Vertex, Vertex>) g
focal_class.modifier: private static final
focal_class.original_string: private static final Function<GraphTraversal<?, ?>, GraphTraversal<Vertex, Vertex>> INITIAL_VERTEX =
              g -> (GraphTraversal<Vertex, Vertex>) g;
focal_class.type: Function<GraphTraversal<?, ?>, GraphTraversal<Vertex, Vertex>>
focal_class.var_name: INITIAL_VERTEX
focal_class.declarator: INITIAL_EDGE =
              g -> (GraphTraversal<Vertex, Edge>) g
focal_class.modifier: private static final
focal_class.original_string: private static final Function<GraphTraversal<?, ?>, GraphTraversal<Vertex, Edge>> INITIAL_EDGE =
              g -> (GraphTraversal<Vertex, Edge>) g;
focal_class.type: Function<GraphTraversal<?, ?>, GraphTraversal<Vertex, Edge>>
focal_class.var_name: INITIAL_EDGE
focal_class.declarator: gremlinExecutor
focal_class.modifier: private
focal_class.original_string: private GremlinExecutor gremlinExecutor;
focal_class.type: GremlinExecutor
focal_class.var_name: gremlinExecutor
focal_class.file: artemis-graph/src/main/java/org/jnosql/artemis/graph/AbstractGraphTemplate.java
focal_class.identifier: AbstractGraphTemplate
focal_class.interfaces: implements GraphTemplate
focal_class.class_method_signature: AbstractGraphTemplate.getGraph()
focal_class.full_signature: protected abstract Graph getGraph()
focal_class.identifier: getGraph
focal_class.modifiers: protected abstract
focal_class.parameters: ()
focal_class.return: Graph
focal_class.signature: Graph getGraph()
focal_class.class_method_signature: AbstractGraphTemplate.getClassMappings()
focal_class.full_signature: protected abstract ClassMappings getClassMappings()
focal_class.identifier: getClassMappings
focal_class.modifiers: protected abstract
focal_class.parameters: ()
focal_class.return: ClassMappings
focal_class.signature: ClassMappings getClassMappings()
focal_class.class_method_signature: AbstractGraphTemplate.getConverter()
focal_class.full_signature: protected abstract GraphConverter getConverter()
focal_class.identifier: getConverter
focal_class.modifiers: protected abstract
focal_class.parameters: ()
focal_class.return: GraphConverter
focal_class.signature: GraphConverter getConverter()
focal_class.class_method_signature: AbstractGraphTemplate.getFlow()
focal_class.full_signature: protected abstract GraphWorkflow getFlow()
focal_class.identifier: getFlow
focal_class.modifiers: protected abstract
focal_class.parameters: ()
focal_class.return: GraphWorkflow
focal_class.signature: GraphWorkflow getFlow()
focal_class.class_method_signature: AbstractGraphTemplate.getExecutor()
focal_class.full_signature: private GremlinExecutor getExecutor()
focal_class.identifier: getExecutor
focal_class.modifiers: private
focal_class.parameters: ()
focal_class.return: GremlinExecutor
focal_class.signature: GremlinExecutor getExecutor()
focal_class.class_method_signature: AbstractGraphTemplate.insert(T entity)
focal_class.full_signature: @Override public T insert(T entity)
focal_class.identifier: insert
focal_class.modifiers: @Override public
focal_class.parameters: (T entity)
focal_class.return: T
focal_class.signature: T insert(T entity)
focal_class.class_method_signature: AbstractGraphTemplate.update(T entity)
focal_class.full_signature: @Override public T update(T entity)
focal_class.identifier: update
focal_class.modifiers: @Override public
focal_class.parameters: (T entity)
focal_class.return: T
focal_class.signature: T update(T entity)
focal_class.class_method_signature: AbstractGraphTemplate.delete(T idValue)
focal_class.full_signature: @Override public void delete(T idValue)
focal_class.identifier: delete
focal_class.modifiers: @Override public
focal_class.parameters: (T idValue)
focal_class.return: void
focal_class.signature: void delete(T idValue)
focal_class.class_method_signature: AbstractGraphTemplate.deleteEdge(T idEdge)
focal_class.full_signature: @Override public void deleteEdge(T idEdge)
focal_class.identifier: deleteEdge
focal_class.modifiers: @Override public
focal_class.parameters: (T idEdge)
focal_class.return: void
focal_class.signature: void deleteEdge(T idEdge)
focal_class.class_method_signature: AbstractGraphTemplate.find(ID idValue)
focal_class.full_signature: @Override public Optional<T> find(ID idValue)
focal_class.identifier: find
focal_class.modifiers: @Override public
focal_class.parameters: (ID idValue)
focal_class.return: Optional<T>
focal_class.signature: Optional<T> find(ID idValue)
focal_class.class_method_signature: AbstractGraphTemplate.edge(OUT outgoing, String label, IN incoming)
focal_class.full_signature: @Override public EdgeEntity edge(OUT outgoing, String label, IN incoming)
focal_class.identifier: edge
focal_class.modifiers: @Override public
focal_class.parameters: (OUT outgoing, String label, IN incoming)
focal_class.return: EdgeEntity
focal_class.signature: EdgeEntity edge(OUT outgoing, String label, IN incoming)
focal_class.class_method_signature: AbstractGraphTemplate.edge(E edgeId)
focal_class.full_signature: @Override public Optional<EdgeEntity> edge(E edgeId)
focal_class.identifier: edge
focal_class.modifiers: @Override public
focal_class.parameters: (E edgeId)
focal_class.return: Optional<EdgeEntity>
focal_class.signature: Optional<EdgeEntity> edge(E edgeId)
focal_class.class_method_signature: AbstractGraphTemplate.getEdges(T entity, Direction direction)
focal_class.full_signature: @Override public Collection<EdgeEntity> getEdges(T entity, Direction direction)
focal_class.identifier: getEdges
focal_class.modifiers: @Override public
focal_class.parameters: (T entity, Direction direction)
focal_class.return: Collection<EdgeEntity>
focal_class.signature: Collection<EdgeEntity> getEdges(T entity, Direction direction)
focal_class.class_method_signature: AbstractGraphTemplate.getEdges(T entity, Direction direction, String... labels)
focal_class.full_signature: @Override public Collection<EdgeEntity> getEdges(T entity, Direction direction, String... labels)
focal_class.identifier: getEdges
focal_class.modifiers: @Override public
focal_class.parameters: (T entity, Direction direction, String... labels)
focal_class.return: Collection<EdgeEntity>
focal_class.signature: Collection<EdgeEntity> getEdges(T entity, Direction direction, String... labels)
focal_class.class_method_signature: AbstractGraphTemplate.getEdges(T entity, Direction direction, Supplier<String>... labels)
focal_class.full_signature: @SafeVarargs @Override public final Collection<EdgeEntity> getEdges(T entity, Direction direction, Supplier<String>... labels)
focal_class.identifier: getEdges
focal_class.modifiers: @SafeVarargs @Override public final
focal_class.parameters: (T entity, Direction direction, Supplier<String>... labels)
focal_class.return: Collection<EdgeEntity>
focal_class.signature: Collection<EdgeEntity> getEdges(T entity, Direction direction, Supplier<String>... labels)
focal_class.class_method_signature: AbstractGraphTemplate.getEdgesById(ID id, Direction direction, String... labels)
focal_class.full_signature: @Override public Collection<EdgeEntity> getEdgesById(ID id, Direction direction, String... labels)
focal_class.identifier: getEdgesById
focal_class.modifiers: @Override public
focal_class.parameters: (ID id, Direction direction, String... labels)
focal_class.return: Collection<EdgeEntity>
focal_class.signature: Collection<EdgeEntity> getEdgesById(ID id, Direction direction, String... labels)
focal_class.class_method_signature: AbstractGraphTemplate.getEdgesById(ID id, Direction direction)
focal_class.full_signature: @Override public Collection<EdgeEntity> getEdgesById(ID id, Direction direction)
focal_class.identifier: getEdgesById
focal_class.modifiers: @Override public
focal_class.parameters: (ID id, Direction direction)
focal_class.return: Collection<EdgeEntity>
focal_class.signature: Collection<EdgeEntity> getEdgesById(ID id, Direction direction)
focal_class.class_method_signature: AbstractGraphTemplate.getEdgesById(ID id, Direction direction, Supplier<String>... labels)
focal_class.full_signature: @SafeVarargs @Override public final Collection<EdgeEntity> getEdgesById(ID id, Direction direction, Supplier<String>... labels)
focal_class.identifier: getEdgesById
focal_class.modifiers: @SafeVarargs @Override public final
focal_class.parameters: (ID id, Direction direction, Supplier<String>... labels)
focal_class.return: Collection<EdgeEntity>
focal_class.signature: Collection<EdgeEntity> getEdgesById(ID id, Direction direction, Supplier<String>... labels)
focal_class.class_method_signature: AbstractGraphTemplate.getTraversalVertex(Object... vertexIds)
focal_class.full_signature: @Override public VertexTraversal getTraversalVertex(Object... vertexIds)
focal_class.identifier: getTraversalVertex
focal_class.modifiers: @Override public
focal_class.parameters: (Object... vertexIds)
focal_class.return: VertexTraversal
focal_class.signature: VertexTraversal getTraversalVertex(Object... vertexIds)
focal_class.class_method_signature: AbstractGraphTemplate.getTraversalEdge(Object... edgeIds)
focal_class.full_signature: @Override public EdgeTraversal getTraversalEdge(Object... edgeIds)
focal_class.identifier: getTraversalEdge
focal_class.modifiers: @Override public
focal_class.parameters: (Object... edgeIds)
focal_class.return: EdgeTraversal
focal_class.signature: EdgeTraversal getTraversalEdge(Object... edgeIds)
focal_class.class_method_signature: AbstractGraphTemplate.getTransaction()
focal_class.full_signature: @Override public Transaction getTransaction()
focal_class.identifier: getTransaction
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: Transaction
focal_class.signature: Transaction getTransaction()
focal_class.class_method_signature: AbstractGraphTemplate.query(String gremlin)
focal_class.full_signature: @Override public List<T> query(String gremlin)
focal_class.identifier: query
focal_class.modifiers: @Override public
focal_class.parameters: (String gremlin)
focal_class.return: List<T>
focal_class.signature: List<T> query(String gremlin)
focal_class.class_method_signature: AbstractGraphTemplate.singleResult(String gremlin)
focal_class.full_signature: @Override public Optional<T> singleResult(String gremlin)
focal_class.identifier: singleResult
focal_class.modifiers: @Override public
focal_class.parameters: (String gremlin)
focal_class.return: Optional<T>
focal_class.signature: Optional<T> singleResult(String gremlin)
focal_class.class_method_signature: AbstractGraphTemplate.prepare(String gremlin)
focal_class.full_signature: @Override public PreparedStatement prepare(String gremlin)
focal_class.identifier: prepare
focal_class.modifiers: @Override public
focal_class.parameters: (String gremlin)
focal_class.return: PreparedStatement
focal_class.signature: PreparedStatement prepare(String gremlin)
focal_class.class_method_signature: AbstractGraphTemplate.getTraversal()
focal_class.full_signature: protected GraphTraversalSource getTraversal()
focal_class.identifier: getTraversal
focal_class.modifiers: protected
focal_class.parameters: ()
focal_class.return: GraphTraversalSource
focal_class.signature: GraphTraversalSource getTraversal()
focal_class.class_method_signature: AbstractGraphTemplate.getVertices(Object id)
focal_class.full_signature: protected Iterator<Vertex> getVertices(Object id)
focal_class.identifier: getVertices
focal_class.modifiers: protected
focal_class.parameters: (Object id)
focal_class.return: Iterator<Vertex>
focal_class.signature: Iterator<Vertex> getVertices(Object id)
focal_class.class_method_signature: AbstractGraphTemplate.count(String label)
focal_class.full_signature: @Override public long count(String label)
focal_class.identifier: count
focal_class.modifiers: @Override public
focal_class.parameters: (String label)
focal_class.return: long
focal_class.signature: long count(String label)
focal_class.class_method_signature: AbstractGraphTemplate.count(Class<T> entityClass)
focal_class.full_signature: @Override public long count(Class<T> entityClass)
focal_class.identifier: count
focal_class.modifiers: @Override public
focal_class.parameters: (Class<T> entityClass)
focal_class.return: long
focal_class.signature: long count(Class<T> entityClass)
focal_class.class_method_signature: AbstractGraphTemplate.getEdgesByIdImpl(ID id, Direction direction, String... labels)
focal_class.full_signature: private Collection<EdgeEntity> getEdgesByIdImpl(ID id, Direction direction, String... labels)
focal_class.identifier: getEdgesByIdImpl
focal_class.modifiers: private
focal_class.parameters: (ID id, Direction direction, String... labels)
focal_class.return: Collection<EdgeEntity>
focal_class.signature: Collection<EdgeEntity> getEdgesByIdImpl(ID id, Direction direction, String... labels)
focal_class.class_method_signature: AbstractGraphTemplate.getVertex(T entity)
focal_class.full_signature: private Optional<Vertex> getVertex(T entity)
focal_class.identifier: getVertex
focal_class.modifiers: private
focal_class.parameters: (T entity)
focal_class.return: Optional<Vertex>
focal_class.signature: Optional<Vertex> getVertex(T entity)
focal_class.class_method_signature: AbstractGraphTemplate.getEdgesImpl(T entity, Direction direction, String... labels)
focal_class.full_signature: private Collection<EdgeEntity> getEdgesImpl(T entity, Direction direction, String... labels)
focal_class.identifier: getEdgesImpl
focal_class.modifiers: private
focal_class.parameters: (T entity, Direction direction, String... labels)
focal_class.return: Collection<EdgeEntity>
focal_class.signature: Collection<EdgeEntity> getEdgesImpl(T entity, Direction direction, String... labels)
focal_class.class_method_signature: AbstractGraphTemplate.checkLabelsSupplier(Supplier<String>[] labels)
focal_class.full_signature: private void checkLabelsSupplier(Supplier<String>[] labels)
focal_class.identifier: checkLabelsSupplier
focal_class.modifiers: private
focal_class.parameters: (Supplier<String>[] labels)
focal_class.return: void
focal_class.signature: void checkLabelsSupplier(Supplier<String>[] labels)
focal_class.class_method_signature: AbstractGraphTemplate.isIdNull(T entity)
focal_class.full_signature: private boolean isIdNull(T entity)
focal_class.identifier: isIdNull
focal_class.modifiers: private
focal_class.parameters: (T entity)
focal_class.return: boolean
focal_class.signature: boolean isIdNull(T entity)
focal_class.class_method_signature: AbstractGraphTemplate.checkId(T entity)
focal_class.full_signature: private void checkId(T entity)
focal_class.identifier: checkId
focal_class.modifiers: private
focal_class.parameters: (T entity)
focal_class.return: void
focal_class.signature: void checkId(T entity)
focal_method.body: @Override
      public <T> Optional<T> singleResult(String gremlin) {
          List<T> entities = query(gremlin);
          if (entities.isEmpty()) {
              return Optional.empty();
          }
          if (entities.size() == 1) {
              return Optional.ofNullable(entities.get(0));
          }
          throw new NonUniqueResultException("The gremlin query returns more than one result: " + gremlin);
  
      }
focal_method.class_method_signature: AbstractGraphTemplate.singleResult(String gremlin)
focal_method.full_signature: @Override public Optional<T> singleResult(String gremlin)
focal_method.identifier: singleResult
focal_method.invocations: query isEmpty empty size ofNullable get
focal_method.modifiers: @Override public
focal_method.parameters: (String gremlin)
focal_method.return: Optional<T>
focal_method.signature: Optional<T> singleResult(String gremlin)