Ejemplo n.º 1
0
  @SuppressWarnings("unchecked")
  private IElement getDummy(Class<? extends IElement> elementClass) {
    IElement dummy = null;
    GraphDataStructure tempGDS;
    EnumMap<ListType, Class<? extends IDataStructure>> listtypes =
        GraphDataStructure.getList(
            ListType.GlobalNodeList, DArray.class, ListType.GlobalEdgeList, DArray.class);

    if (Node.class.isAssignableFrom(elementClass)) {
      tempGDS = new GraphDataStructure(listtypes, (Class<? extends Node>) elementClass, null);
      dummy = tempGDS.newNodeInstance(42);
    } else if (DirectedEdge.class.isAssignableFrom(elementClass)) {
      tempGDS = new GraphDataStructure(listtypes, null, (Class<? extends Edge>) elementClass);

      DirectedNode n1 = new DirectedNode(1, tempGDS);
      DirectedNode n2 = new DirectedNode(2, tempGDS);

      dummy = tempGDS.newEdgeInstance(n1, n2);
    } else if (UndirectedEdge.class.isAssignableFrom(elementClass)) {
      tempGDS = new GraphDataStructure(listtypes, null, (Class<? extends Edge>) elementClass);

      UndirectedNode n1 = new UndirectedNode(1, tempGDS);
      UndirectedNode n2 = new UndirectedNode(2, tempGDS);

      dummy = tempGDS.newEdgeInstance(n1, n2);
    } else {
      fail("Cannot identify " + elementClass);
    }
    return dummy;
  }