class GraphElementFactory implements VertexProvider<Node>, EdgeProvider<Node, Edge> {

    public Edge createEdge(final Node from, final Node to, final String name, final List<String> labels,
            final Map<String, Object> attributesMap) {
        return new Edge(from, to, name, labels, toEdgeAttributes(attributesMap));
    }

    public  GraphElementFactory(final List<Class<?>> entityClasses);

}