use of org.cytoscape.util.json.CyJSONUtil in project cytoscape-impl by cytoscape.
the class ImportTableDataTask method getResults.
@Override
public Object getResults(Class requestedType) {
if (requestedType.equals(List.class))
return mappedTables;
if (requestedType.equals(String.class)) {
String str = "Mapped to tables:\n";
for (CyTable table : mappedTables) {
str += " " + table.toString() + "\n";
}
return str;
}
if (requestedType.equals(JSONResult.class)) {
CyJSONUtil cyJSONUtil = serviceRegistrar.getService(CyJSONUtil.class);
JSONResult res = () -> {
if (mappedTables.isEmpty())
return "{}";
return "{\"mappedTables\":" + cyJSONUtil.cyIdentifiablesToJson(mappedTables) + "}";
};
return res;
}
return null;
}
use of org.cytoscape.util.json.CyJSONUtil in project cytoscape-impl by cytoscape.
the class GetNodeAttributeTask method getResults.
public Object getResults(Class requestedType) {
if (requestedType.equals(String.class)) {
return DataUtils.convertMapToString(nodeDataMap);
} else if (requestedType.equals(JSONResult.class)) {
JSONResult res = () -> {
if (nodeDataMap == null)
return "[]";
else {
StringBuilder output = new StringBuilder("[");
CyJSONUtil cyJSONUtil = serviceRegistrar.getService(CyJSONUtil.class);
List<CyColumn> cyColumn = columnTunable.getColumnList(nodeTable);
CyColumn[] cyColumnArray = cyColumn.size() > 0 ? cyColumn.toArray(new CyColumn[0]) : new CyColumn[] {};
int count = nodeDataMap.size();
for (CyIdentifiable node : nodeDataMap.keySet()) {
CyRow row = nodeTable.getRow(node.getSUID());
output.append(" " + cyJSONUtil.toJson(row, cyColumnArray));
if (count > 1) {
output.append(",\n");
}
count--;
}
output.append("\n]");
return output.toString();
}
};
return res;
}
return nodeDataMap;
}
use of org.cytoscape.util.json.CyJSONUtil in project cytoscape-impl by cytoscape.
the class GetEdgeAttributeTask method getResults.
public Object getResults(Class requestedType) {
if (requestedType.equals(String.class)) {
return DataUtils.convertMapToString(edgeDataMap);
} else if (requestedType.equals(JSONResult.class)) {
JSONResult res = () -> {
if (edgeDataMap == null)
return "[]";
else {
StringBuilder output = new StringBuilder("[");
CyJSONUtil cyJSONUtil = serviceRegistrar.getService(CyJSONUtil.class);
List<CyColumn> cyColumn = columnTunable.getColumnList(edgeTable);
CyColumn[] cyColumnArray = cyColumn.size() > 0 ? cyColumn.toArray(new CyColumn[0]) : new CyColumn[] {};
int count = edgeDataMap.size();
for (CyIdentifiable edge : edgeDataMap.keySet()) {
CyRow row = edgeTable.getRow(edge.getSUID());
output.append(" " + cyJSONUtil.toJson(row, cyColumnArray));
if (count > 1) {
output.append(",\n");
}
count--;
}
output.append("\n]");
return output.toString();
}
};
return res;
}
return edgeDataMap;
}
use of org.cytoscape.util.json.CyJSONUtil in project cytoscape-impl by cytoscape.
the class AddTask method getResults.
@Override
@SuppressWarnings({ "rawtypes", "unchecked" })
public Object getResults(Class type) {
List<CyIdentifiable> identifiables = new ArrayList();
if (nodeList != null)
identifiables.addAll(nodeList);
if (edgeList != null)
identifiables.addAll(edgeList);
if (type.equals(List.class)) {
return identifiables;
} else if (type.equals(String.class)) {
if (identifiables.size() == 0)
return "<none>";
String ret = "";
if (nodeList != null && nodeList.size() > 0) {
ret += "Nodes added: \n";
for (CyNode node : nodeList) {
ret += " " + network.getRow(node).get(CyNetwork.NAME, String.class) + "\n";
}
}
if (edgeList != null && edgeList.size() > 0) {
ret += "Edges added: \n";
for (CyEdge edge : edgeList) {
ret += " " + network.getRow(edge).get(CyNetwork.NAME, String.class) + "\n";
}
}
return ret;
} else if (type.equals(JSONResult.class)) {
JSONResult res = () -> {
if (identifiables == null || identifiables.size() == 0)
return "{}";
else {
CyJSONUtil cyJSONUtil = serviceRegistrar.getService(CyJSONUtil.class);
String result = "{\"nodes\":";
if (nodeList == null || nodeList.size() == 0)
result += "[]";
else
result += cyJSONUtil.cyIdentifiablesToJson(nodeList);
result += ", \"edges\":";
if (edgeList == null || edgeList.size() == 0)
result += "[]";
else
result += cyJSONUtil.cyIdentifiablesToJson(edgeList);
result += "}";
return result;
}
};
return res;
}
return identifiables;
}
use of org.cytoscape.util.json.CyJSONUtil in project cytoscape-impl by cytoscape.
the class GetNetworkAttributeTask method getResults.
public Object getResults(Class requestedType) {
if (requestedType.equals(String.class)) {
return DataUtils.convertMapToString(networkData);
} else if (requestedType.equals(JSONResult.class)) {
JSONResult res = () -> {
if (networkData == null)
return "[]";
else {
StringBuilder output = new StringBuilder("[");
CyJSONUtil cyJSONUtil = serviceRegistrar.getService(CyJSONUtil.class);
List<CyColumn> cyColumn = columnTunable.getColumnList(networkTable);
CyColumn[] cyColumnArray = cyColumn.size() > 0 ? cyColumn.toArray(new CyColumn[0]) : new CyColumn[] {};
CyRow row = networkTable.getRow(network.getSUID());
output.append(" " + cyJSONUtil.toJson(row, cyColumnArray));
output.append("\n]");
return output.toString();
}
};
return res;
}
return networkData;
}
Aggregations