@Override public void ndlNode(Resource ce, OntModel om, Resource ceClass, List<Resource> interfaces) { // ignore request items // if (requestPhase) // return; if (ce == null) return; // logger.debug("Node: " + ce); OrcaNode newNode; if (NdlCommons.isStitchingNodeInManifest(ce)) { // logger.debug(" is a stitching port"); OrcaStitchPort sp = new OrcaStitchPort(getPrettyName(ce)); // get the interface (first) if (interfaces.size() == 1) { sp.setLabel(NdlCommons.getLayerLabelLiteral(interfaces.get(0))); if (NdlCommons.getLinkTo(interfaces.get(0)) != null) sp.setPort(NdlCommons.getLinkTo(interfaces.get(0)).toString()); } newNode = sp; } else if (NdlCommons.isNetworkStorage(ce)) { // logger.debug(" is a storage node"); newNode = new OrcaStorageNode(getPrettyName(ce)); newNode.setIsResource(); } else if (NdlCommons.isMulticastDevice(ce)) { // logger.debug(" is a multicast root"); newNode = new OrcaCrossconnect(getPrettyName(ce)); newNode.setIsResource(); } else { // logger.debug(" is a regular node"); newNode = new OrcaNode(getPrettyName(ce)); } for (Resource ii : interfaces) // logger.debug(" With interface " + ii); // set common properties setCommonNodeProperties(newNode, ce); // process interfaces for (Iterator<Resource> it = interfaces.iterator(); it.hasNext(); ) { Resource intR = it.next(); // interfaceToNode.put(getTrueName(intR), newNode); // logger.debug("Remembering interface " + intR + " of node " + ce); addNodeToInterface(getTrueName(intR), newNode); } // disk image Resource di = NdlCommons.getDiskImage(ce); if (di != null) { try { // String imageURL = NdlCommons.getIndividualsImageURL(ce); // String imageHash = NdlCommons.getIndividualsImageHash(ce); // GUIRequestState.getInstance().addImage(new OrcaImage(di.getLocalName(), // new URL(imageURL), imageHash), null); String imgName = di.getURI().replaceAll("http.+#", "").replace("+", " "); newNode.setImage(imgName); } catch (Exception e) { // FIXME: ? ; } } nodes.put(getTrueName(ce), newNode); // add nodes to the graph pg.addNodeLater(newNode); // are there nodes hanging off of it as elements? if so, link them in processDomainVmElements(ce, om, newNode); }