VWorkspace vWorkspace) {
JSONArray nodesArray = new JSONArray();
JSONObject obj = new JSONObject();
for (Entry<String, Label> entry : allClasses.entrySet()) {
JSONObject nodeObj = new JSONObject();
Label label = entry.getValue();
nodeObj.put(JsonKeys.nodeLabel.name(), label.getDisplayName());
nodeObj.put(JsonKeys.nodeId.name(), label.getUri());
nodeObj.put(JsonKeys.nodeUri.name(), label.getUri());
nodesArray.put(nodeObj);
}
obj.put(JsonKeys.nodes.name(), nodesArray);
pw.println(obj.toString());
}
});
return upd;
}
if (nodeSet == null) {
nodeSet = new HashSet<Node>();
}
final Set<Node> finalNodeSet = nodeSet;
UpdateContainer upd = new UpdateContainer(new AbstractUpdate() {
@Override
public void generateJson(String prefix, PrintWriter pw,
VWorkspace vWorkspace) {
JSONObject obj = new JSONObject();
JSONArray nodesArray = new JSONArray();
try {
obj.put(JsonKeys.updateType.name(), "InternalNodesList");
for (Node node:finalNodeSet) {
if (!(node instanceof InternalNode)) {
continue;
}
JSONObject nodeObj = new JSONObject();
String nodeLabelStr = node.getDisplayId();
Label nodeLabel = node.getLabel();
if (nodeLabel.getUri() !=null && nodeLabel.getNs() != null
&& nodeLabel.getUri().equalsIgnoreCase(nodeLabel.getNs())) {
nodeLabelStr = node.getId();
} else if(nodeLabel.getPrefix() == null && nodeLabel.getUri() != null) {
nodeLabelStr = nodeLabel.getUri() + "/" + nodeLabelStr;
}
nodeObj.put(JsonKeys.nodeLabel.name(), nodeLabelStr);
nodeObj.put(JsonKeys.nodeId.name(), node.getId());
nodeObj.put(JsonKeys.nodeUri.name(), nodeLabel.getUri());
nodesArray.put(nodeObj);
}
obj.put(JsonKeys.nodes.name(), nodesArray);
pw.println(obj.toString());