* @return Graph
* @throws IOException
*/
public static Graph getGraph() throws IOException {
Graph g = new DirectedSparseGraph();
DirectedSparseVertex v1 = new DirectedSparseVertex();
DirectedSparseVertex v2 = new DirectedSparseVertex();
DirectedSparseVertex v3 = new DirectedSparseVertex();
DirectedSparseVertex v4 = new DirectedSparseVertex();
v1.setUserDatum("ID", "123", UserData.SHARED);
v1.setUserDatum("Name","v1Name",UserData.SHARED);
v1.setUserDatum("Description", "Node 1 Description", UserData.SHARED);
v1.setUserDatum("Deepness", 2,UserData.SHARED);
v2.setUserDatum("ID", "456", UserData.SHARED);
v2.setUserDatum("Name","v2Name",UserData.SHARED);
v2.setUserDatum("Description", "Node 2 Description", UserData.SHARED);
v2.setUserDatum("Deepness", 2,UserData.SHARED);
v3.setUserDatum("ID", "789", UserData.SHARED);
v3.setUserDatum("Name","v3Name",UserData.SHARED);
v3.setUserDatum("Description", "Node 3 Description", UserData.SHARED);
v3.setUserDatum("Deepness", 2,UserData.SHARED);
v4.setUserDatum("ID", "444", UserData.SHARED);
v4.setUserDatum("Name","v4Name",UserData.SHARED);
v4.setUserDatum("Description", "Node 4 Description", UserData.SHARED);
v4.setUserDatum("Deepness", 1,UserData.SHARED);
g.addVertex(v1);
g.addVertex(v2);
g.addVertex(v3);
g.addVertex(v4);
Edge e12 = new DirectedSparseEdge(v1, v2);
e12.setUserDatum("ID", "12", UserData.SHARED);
e12.setUserDatum("Name", "myEdge12", UserData.SHARED);
e12.setUserDatum("Description", "myEdge 12 description", UserData.SHARED);
e12.setUserDatum("Deepness", 2, UserData.SHARED);
g.addEdge(e12);
Edge e23 = new DirectedSparseEdge(v2, v3);
e23.setUserDatum("ID", "23", UserData.SHARED);
e23.setUserDatum("Name", "myEdge23", UserData.SHARED);
e23.setUserDatum("Description", "myEdge 23 description", UserData.SHARED);
e23.setUserDatum("Deepness", 1, UserData.SHARED);
g.addEdge(e23);
Edge e13 = new DirectedSparseEdge(v1, v3);
e13.setUserDatum("ID", "13", UserData.SHARED);
e13.setUserDatum("Name", "myEdge13", UserData.SHARED);
e13.setUserDatum("Description", "myEdge 13 description", UserData.SHARED);
e13.setUserDatum("Deepness", 1, UserData.SHARED);
g.addEdge(e13);
Edge e34= new DirectedSparseEdge(v3,v4);
e34.setUserDatum("ID", "34", UserData.SHARED);
e34.setUserDatum("Name", "myEdge34", UserData.SHARED);
e34.setUserDatum("Description", "myEdge 34 description", UserData.SHARED);
e34.setUserDatum("Deepness", 1, UserData.SHARED);
g.addEdge(e34);
return g;
}