static boolean configure(final ShortestPathVertexProgramStep step, final String key, final Object value) {

        if (target.equals(key)) {
            if (value instanceof Traversal) {
                step.setTargetVertexFilter((Traversal) value);
                return true;
            }
            else throw new IllegalArgumentException("ShortestPath.target requires a Traversal as its argument");
        }
        else if (edges.equals(key)) {
            if (value instanceof Traversal) {
                step.setEdgeTraversal((Traversal) value);
                return true;
            }
            else if (value instanceof Direction) {
                step.setEdgeTraversal(__.toE((Direction) value));
                return true;
            }
            else throw new IllegalArgumentException(
                    "ShortestPath.edges requires a Traversal or a Direction as its argument");
        }
        else if (distance.equals(key)) {
            if (value instanceof Traversal) {
                step.setDistanceTraversal((Traversal) value);
                return true;
            }
            else if (value instanceof String) {
                // todo: new ElementValueTraversal((String) value)
                step.setDistanceTraversal(__.values((String) value));
                return true;
            }
            else throw new IllegalArgumentException(
                    "ShortestPath.distance requires a Traversal or a property name as its argument");
        }
        else if (maxDistance.equals(key)) {
            if (value instanceof Number) {
                step.setMaxDistance((Number) value);
                return true;
            }
            else throw new IllegalArgumentException("ShortestPath.maxDistance requires a Number as its argument");
        }
        else if (includeEdges.equals(key)) {
            if (value instanceof Boolean) {
                step.setIncludeEdges((Boolean) value);
                return true;
            }
            else throw new IllegalArgumentException("ShortestPath.includeEdges requires a Boolean as its argument");
        }
        return false;
    }
Configures the inclusion of edges in the shortest path computation result.
gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/computer/traversal/step/map/ShortestPath.java