visualization/visualization-model/src/main/java/se/jguru/nazgul/tools/visualization/model/diagram/statement/RightSideEdge.java
public static RightSideEdge to(final String id, final Graph withinGraph) {

        // Check sanity
        if (id == null) {
            throw new IllegalArgumentException("Cannot handle null 'id' argument.");
        }
        if (withinGraph == null) {
            throw new IllegalArgumentException("Cannot handle null 'withinGraph' argument.");
        }

        // First, assume that the ID is a NodeID.
        // final Statements statements = immediateParent.getStatements();
        final Node node = withinGraph.getStatements().findNode(id, true);
        if (node != null) {
            return new RightSideEdge(node.getNodeID());
        }

        // Next, assume that the ID is a Subgraph.
        final Subgraph subgraph = withinGraph.getStatements().findSubgraph(id, true);
        if (subgraph != null) {
            return new RightSideEdge(subgraph);
        }

        // All Done.
        return null;
    }
public static RightSideEdge to(final String id, final Graph withinGraph) {

        // Check sanity
        if (id == null) {
            throw new IllegalArgumentException("Cannot handle null 'id' argument.");
        }
        if (withinGraph == null) {
            throw new IllegalArgumentException("Cannot handle null 'withinGraph' argument.");
        }

        // First, assume that the ID is a NodeID.
        // final Statements statements = immediateParent.getStatements();
        final Node node = withinGraph.getStatements().findNode(id, true);
        if (node != null) {
            return new RightSideEdge(node.getNodeID());
        }

        // Next, assume that the ID is a Subgraph.
        final Subgraph subgraph = withinGraph.getStatements().findSubgraph(id, true);
        if (subgraph != null) {
            return new RightSideEdge(subgraph);
        }

        // All Done.
        return null;
    }
Factory method creating a {@link RightSideEdge} which terminates in the Node or Subgraph with the supplied ID
and within the supplied Graph.

@param id          A non-null identifier of a NodeID or Subgraph to which this {@link RightSideEdge}
should go.
@param withinGraph The non-null Graph which is the ultimate parent of the {@link RightSideEdge} to create.
@return A newly constructed {@link RightSideEdge} which <strong>is not yet added to any {@link Edge} or
{@link RightSideEdge}</strong> - or null if no Node or Subgraph with the supplied id was
found in the withinGraph.