List of usage examples for com.google.gwt.json.client JSONArray isArray
@Override
public JSONArray isArray()
this, as this is a JSONArray. From source file:eu.riscoss.client.report.RiskAnalysisReport.java
License:Apache License
public void showResults(JsonRiskAnalysis summary, JSONArray response, JSONValue jsonArgumentation) { initializeParameters();//from ww w . j a va 2 s . c o m /*if( panel.getWidget() != null ) { panel.getWidget().removeFromParent(); }*/ this.summary = summary; panel.clear(); mainChartPanel.clear(); descriptions.clear(); mainChartPanel.setStyleName("margin-top"); this.response = response; evidence = false; Codec codec = GWT.create(Codec.class); if (jsonArgumentation != null) { argumentation = codec.decode(jsonArgumentation); } generateMainChart(); getSessionsInformation(); Grid grid = new Grid(); grid.setStyleName("margin-grid"); grid.setCellPadding(0); grid.setCellSpacing(0); for (int i = 0; i < response.isArray().size(); i++) { JSONObject v = response.isArray().get(i).isObject(); JsonRiskResult result = new JsonRiskResult(v); // grid.insertRow( grid.getRowCount() ); switch (result.getDataType()) { case DISTRIBUTION: { grid.resize(grid.getRowCount() + 1, 3); VerticalPanel panel = new VerticalPanel(); String label = v.get("id").isString().stringValue(); if (v.get("name") != null) { if (v.get("name").isString() != null) { label = v.get("name").isString().stringValue(); } } Label l = new Label(label); l.setStyleName("bold"); panel.add(l); panel.setStyleName("headerTable"); grid.setWidget(i, 0, panel); GaugeImage img = new GaugeImage(); img.setDistribution(result.getDistributionString()); grid.setWidget(i, 1, img); HorizontalPanel hp = new HorizontalPanel(); hp.add(new Label(result.getDescription())); JArgument arg = argumentation.arguments.get(result.getChunkId()); if (arg != null) { Button b = new Button("Why?"); b.setStyleName("button"); b.addClickHandler(new ClickWrapper<JArgument>(arg) { @Override public void onClick(ClickEvent event) { DialogBox d = new DialogBox(true); JArgument arg = getValue(); TreeWidget w = load(arg); d.add(w); d.center(); } private TreeWidget load(JArgument arg) { TreeWidget w = new TreeWidget(new Label(arg.summary)); for (JArgument subArg : arg.subArgs) { w.addChild(load(subArg)); } return w; } }); hp.add(b); } grid.setWidget(i, 2, hp); } break; case EVIDENCE: { evidence = true; grid.resize(grid.getRowCount() + 1, 3); VerticalPanel panel = new VerticalPanel(); Label l = new Label(v.get("id").isString().stringValue()); l.setStyleName("bold"); panel.add(l); panel.add(new HTML("Exposure: <font color='red'>" + v.get("e").isObject().get("e").isNumber().doubleValue() + "</font>")); panel.setStyleName("headerTable"); panel.setHeight("100%"); JArgument arg = argumentation.arguments.get(result.getChunkId()); if (arg != null) { Button b = new Button("Why?"); b.setStyleName("button"); b.addClickHandler(new ClickWrapper<JArgument>(arg) { @Override public void onClick(ClickEvent event) { DialogBox d = new DialogBox(true); JArgument arg = getValue(); TreeWidget w = load(arg); d.add(w); d.center(); } private TreeWidget load(JArgument arg) { TreeWidget w = new TreeWidget(new Label(arg.summary)); for (JArgument subArg : arg.subArgs) { w.addChild(load(subArg)); } return w; } }); panel.add(b); } grid.setWidget(i, 0, panel); if ("evidence".equals(v.get("datatype").isString().stringValue())) { GaugeImage img = new GaugeImage(); img.setEvidence(v.get("p").isString().stringValue(), v.get("m").isString().stringValue()); SimplePanel p = new SimplePanel(); p.setWidget(img); p.setStyleName("contentResultsTable"); grid.setWidget(i, 1, p); } SimplePanel s = new SimplePanel(); s.setStyleName("chart"); panels.add(s); grid.setWidget(i, 2, s); } break; case INTEGER: case NaN: case REAL: case STRING: default: break; } } if (evidence) panel.add(mainChartPanel); panel.add(grid); }
From source file:eu.riscoss.client.report.RiskAnalysisReport.java
License:Apache License
protected void getSessionsInformation() { RiscossJsonClient.listRiskAnalysisSessions(summary.getTarget(), summary.getRC(), new JsonCallback() { @Override/* w w w. ja v a 2 s . c om*/ public void onFailure(Method method, Throwable exception) { Window.alert(exception.getMessage()); } @Override public void onSuccess(Method method, JSONValue response) { response = response.isObject().get("list"); count = response.isArray().size(); CodecRASInfo codec = GWT.create(CodecRASInfo.class); if (response.isArray() != null) { for (int i = 0; i < response.isArray().size(); i++) { JRASInfo info = codec.decode(response.isArray().get(i)); riskSessions.add(info.getId()); ++k; RiscossJsonClient.getSessionSummary(info.getId(), new JsonCallback() { int i = k; @Override public void onFailure(Method method, Throwable exception) { Window.alert(exception.getMessage()); } @Override public void onSuccess(Method method, JSONValue response) { JsonRiskAnalysis r = new JsonRiskAnalysis(response); nextDate = r.getDate(); RiscossJsonClient.getSessionResults(r.getID(), new JsonCallback() { String d = nextDate; @Override public void onFailure(Method method, Throwable exception) { Window.alert(exception.getMessage()); } @Override public void onSuccess(Method method, JSONValue response) { JSONArray results = response.isObject().get("results").isArray(); ArrayList<Double> values = new ArrayList<>(); for (int s = 0; s < results.isArray().size(); ++s) { JSONObject v = results.isArray().get(s).isObject(); JsonRiskResult result = new JsonRiskResult(v); // switch (result.getDataType()) { case EVIDENCE: { values.add(v.get("e").isObject().get("e").isNumber().doubleValue()); } default: break; } } Date date = getDate(d); Info inf = new Info(date, values); dataList.add(inf); ++counting; if (counting == count) { sortByDate(); } } }); } }); } } } }); }
From source file:eu.riscoss.client.riskanalysis.WhatIfAnalysisModule.java
License:Apache License
protected void runAnalysis() { buttons.add(running);//from w w w . ja v a2 s . com if (!ready) { buttons.remove(running); return; } ready = false; JSONObject values = readIndicators(); RiscossJsonClient.runWhatIfAnalysis(models, values, new JsonCallback() { @Override public void onFailure(Method method, Throwable exception) { Window.alert(exception.getMessage()); ready = true; } @Override public void onSuccess(Method method, JSONValue object) { ready = true; if (object.isObject() == null) return; JSONArray response = object.isObject().get("results").isArray(); for (int i = 0; i < response.isArray().size(); i++) { JSONObject v = response.isArray().get(i).isObject(); IndicatorWidget rw = riskWidgets.get(v.get("id").isString().stringValue()); if (rw == null) continue; if ("evidence".equals(v.get("datatype").isString().stringValue())) { rw.setValue(v); // rw.setValue( v.get( "p" ).isString().stringValue(), v.get( "m" ).isString().stringValue() ); } else if ("distribution".equals(v.get("datatype").isString().stringValue())) { rw.setValue(v); } } buttons.remove(running); } }); }
From source file:org.eclipselabs.emfjson.gwt.map.JSUtil.java
License:Open Source License
public static JSONValue findNode(JSONArray node, ResourceSet resourceSet, String fragment, URI objectURI) { JSONArray array = node.isArray(); int pos = 0;//from w w w . j ava 2 s.c om String idx = fragment; for (int i = 0; i < array.size(); i++) { idx = fragment + pos; JSONObject current = array.get(i).isObject(); if (current == null) continue; final EClass currentEClass = getEClass(current, resourceSet); if (currentEClass != null) { EAttribute id = currentEClass.getEIDAttribute(); if (id != null) { JSONString stringNode = current.get(id.getName()).isString(); if (stringNode != null && objectURI.trimFragment().appendFragment(stringNode.stringValue()) .equals(objectURI)) { return current; } } else { if (objectURI.trimFragment().appendFragment(idx).equals(objectURI)) { return current; } } for (EReference reference : currentEClass.getEAllContainments()) { if (current.containsKey(reference.getName())) { JSONValue found = findNode(current.get(reference.getName()), resourceSet, idx += "/@" + reference.getName() + (reference.isMany() ? "." : ""), objectURI); if (found != null) { return found; } } } } pos++; } return null; }
From source file:org.freemedsoftware.gwt.client.JsonUtil.java
License:Open Source License
@SuppressWarnings({ "unchecked", "rawtypes" })
public static synchronized Object shoehornJson(JSONValue r, String t) {
if (r == null || r.toString().equals("null"))
return null;
if (t.equals("HashMap<String,HashMap<String,String>[]>")) {
HashMap<String, HashMap<String, String>[]> oResult = new HashMap<String, HashMap<String, String>[]>();
JSONObject oA = r.isObject();/* w w w .j av a 2 s. com*/
if (oA != null) {
Iterator<String> outerIter = oA.keySet().iterator();
while (outerIter.hasNext()) {
String innerKey = outerIter.next();
List<HashMap<?, ?>> result = new ArrayList<HashMap<?, ?>>();
JSONArray a = oA.get(innerKey).isArray();
for (int oIter = 0; oIter < a.size(); oIter++) {
HashMap<String, String> item = new HashMap<String, String>();
JSONObject obj = a.get(oIter).isObject();
Iterator<String> iter = obj.keySet().iterator();
while (iter.hasNext()) {
String k = iter.next();
if (obj.get(k).isString() != null) {
item.put(k, obj.get(k).isString().stringValue());
}
}
result.add(oIter, item);
}
oResult.put(innerKey, (HashMap<String, String>[]) result.toArray(new HashMap<?, ?>[0]));
}
}
return (HashMap<String, HashMap<String, String>[]>) oResult;
}
if (t.equals("HashMap<String,String>[]")) {
List<HashMap<?, ?>> result = new ArrayList<HashMap<?, ?>>();
JSONArray a = r.isArray();
for (int oIter = 0; oIter < a.size(); oIter++) {
HashMap<String, String> item = new HashMap<String, String>();
JSONObject obj = a.get(oIter).isObject();
Iterator<String> iter = obj.keySet().iterator();
while (iter.hasNext()) {
String k = iter.next();
if (obj.get(k).isString() != null) {
item.put(k, obj.get(k).isString().stringValue());
}
}
result.add(oIter, item);
}
return (HashMap<String, String>[]) result.toArray(new HashMap<?, ?>[0]);
}
if (t.equals("HashMap<String,Object>[]")) {
List<HashMap<?, ?>> result = new ArrayList<HashMap<?, ?>>();
JSONArray a = r.isArray();
for (int oIter = 0; oIter < a.size(); oIter++) {
HashMap<String, Object> item = new HashMap<String, Object>();
JSONObject obj = a.get(oIter).isObject();
Iterator<String> iter = obj.keySet().iterator();
while (iter.hasNext()) {
String k = iter.next();
if (obj.get(k).isString() != null) {
item.put(k, obj.get(k));
}
}
result.add(oIter, item);
}
return (HashMap<String, String>[]) result.toArray(new HashMap<?, ?>[0]);
}
if (t.equals("HashMap<String,String>[][]")) {
List<HashMap<?, ?>[]> result = new ArrayList<HashMap<?, ?>[]>();
JSONArray oArray = r.isArray();
for (int wayOuterIter = 0; wayOuterIter < oArray.size(); wayOuterIter++) {
List<HashMap<?, ?>> innerResult = new ArrayList<HashMap<?, ?>>();
JSONArray a = r.isArray();
for (int oIter = 0; oIter < a.size(); oIter++) {
HashMap<String, String> item = new HashMap<String, String>();
JSONObject obj = a.get(oIter).isObject();
Iterator<String> iter = obj.keySet().iterator();
while (iter.hasNext()) {
String k = iter.next();
if (obj.get(k).isString() != null) {
item.put(k, obj.get(k).isString().stringValue());
}
}
innerResult.add(oIter, item);
}
result.add(wayOuterIter, innerResult.toArray(new HashMap<?, ?>[0]));
}
return (HashMap<String, String>[][]) result.toArray(new HashMap<?, ?>[0][0]);
}
if (t.equals("HashMap<String,String>")) {
JSONObject obj = r.isObject();
HashMap<String, String> result = new HashMap<String, String>();
Iterator<String> iter = obj.keySet().iterator();
while (iter.hasNext()) {
String k = iter.next();
if (obj.get(k).isString() != null) {
result.put(k, obj.get(k).isString().stringValue());
}
}
return (HashMap<String, String>) result;
}
if (t.equals("HashMap<String,Object>")) {
JSONObject obj = r.isObject();
HashMap<String, Object> result = new HashMap<String, Object>();
Iterator<String> iter = obj.keySet().iterator();
while (iter.hasNext()) {
String k = iter.next();
if (obj.get(k) != null) {
result.put(k, obj.get(k));
}
}
return (HashMap<String, Object>) result;
}
if (t.equals("HashMap<String,HashMap<String,String>>")) {
HashMap<String, HashMap<String, String>> oResult = new HashMap<String, HashMap<String, String>>();
JSONObject oA = r.isObject();
if (oA != null) {
Iterator<String> outerIter = oA.keySet().iterator();
while (outerIter.hasNext()) {
String innerKey = outerIter.next();
HashMap<String, String> item = new HashMap<String, String>();
JSONObject obj = oA.get(innerKey).isObject();
Iterator<String> iter = obj.keySet().iterator();
while (iter.hasNext()) {
String k = iter.next();
if (obj.get(k).isString() != null) {
item.put(k, obj.get(k).isString().stringValue());
}
}
oResult.put(innerKey, (HashMap<String, String>) item);
}
}
return (HashMap<String, HashMap<String, String>>) oResult;
}
if (t.equals("HashMap<String,HashMap<String,Integer>>")) {
HashMap<String, HashMap<String, Integer>> oResult = new HashMap<String, HashMap<String, Integer>>();
JSONObject oA = r.isObject();
if (oA != null) {
Iterator<String> outerIter = oA.keySet().iterator();
while (outerIter.hasNext()) {
String innerKey = outerIter.next();
HashMap<String, Integer> item = new HashMap<String, Integer>();
JSONObject obj = oA.get(innerKey).isObject();
Iterator<String> iter = obj.keySet().iterator();
while (iter.hasNext()) {
String k = iter.next();
if (obj.get(k).isNumber() != null) {
item.put(k, (int) obj.get(k).isNumber().doubleValue());
}
}
oResult.put(innerKey, (HashMap<String, Integer>) item);
}
}
return (HashMap<String, HashMap<String, Integer>>) oResult;
}
if (t.equals("HashMap<Integer,String>")) {
JSONObject obj = r.isObject();
HashMap<Integer, String> result = new HashMap<Integer, String>();
Iterator<String> iter = obj.keySet().iterator();
while (iter.hasNext()) {
String k = iter.next();
if (obj.get(k).isString() != null) {
result.put(Integer.valueOf(k), obj.get(k).isString().stringValue());
}
}
return (HashMap<Integer, String>) result;
}
if (t.equals("HashMap<String,Integer>")) {
JSONObject obj = r.isObject();
HashMap<String, Integer> result = new HashMap<String, Integer>();
Iterator<String> iter = obj.keySet().iterator();
while (iter.hasNext()) {
String k = iter.next();
if (obj.get(k).isNumber() != null) {
result.put(k, (int) obj.get(k).isNumber().doubleValue());
}
}
return (HashMap<String, Integer>) result;
}
if (t.equals("String[][]")) {
JSONArray outer = r.isArray();
List<String[]> x = new ArrayList<String[]>();
if (r.isArray() != null) {
for (int oIter = 0; oIter < outer.size(); oIter++) {
if (outer.get(oIter).isArray() != null) {
JSONArray inner = outer.get(oIter).isArray();
List<String> xI = new ArrayList<String>();
if (inner.isArray() != null) {
for (int iIter = 0; iIter < inner.size(); iIter++) {
if (inner.get(iIter).isString() != null) {
xI.add(iIter, inner.get(iIter).isString().stringValue());
} else if (inner.get(iIter).isNumber() != null) {
xI.add(iIter, inner.get(iIter).isNumber().toString());
}
}
}
x.add((String[]) xI.toArray(new String[0]));
}
}
return (String[][]) x.toArray(new String[0][0]);
}
}
if (t.equals("String[]")) {
JSONArray a = r.isArray();
List<String> x = new ArrayList<String>();
if (r.isArray() != null) {
for (int iter = 0; iter < a.size(); iter++) {
if (a.get(iter).isString() != null) {
x.add(iter, a.get(iter).isString().stringValue());
}
}
}
return (String[]) x.toArray(new String[0]);
}
if (t.compareToIgnoreCase("HashMap<String,String[]>") == 0) {
HashMap<String, String[]> oResult = new HashMap<String, String[]>();
JSONObject oA = r.isObject();
if (oA != null) {
Iterator<String> outerIter = oA.keySet().iterator();
while (outerIter.hasNext()) {
String innerKey = outerIter.next();
JSONArray a = oA.get(innerKey).isArray();
String[] x = new String[a.size()];
if (a.isArray() != null) {
for (int iter = 0; iter < a.size(); iter++) {
if (a.get(iter).isString() != null) {
// x.add(iter,
// a.get(iter).isString().stringValue());
x[iter] = a.get(iter).isString().stringValue();
}
}
}
oResult.put(innerKey, x);
}
}
return (HashMap<String, String[]>) oResult;
}
if (t.compareToIgnoreCase("HashMap<String,List>") == 0) {
HashMap<String, List> oResult = new HashMap<String, List>();
JSONObject oA = r.isObject();
if (oA != null) {
Iterator<String> outerIter = oA.keySet().iterator();
while (outerIter.hasNext()) {
String innerKey = outerIter.next();
JSONArray a = oA.get(innerKey).isArray();
List x = new ArrayList();
if (a.isArray() != null) {
for (int iter = 0; iter < a.size(); iter++) {
if (a.get(iter).isString() != null) {
// x.add(iter,
// a.get(iter).isString().stringValue());
x.add(a.get(iter).isString().stringValue());
}
}
}
oResult.put(innerKey, x);
}
}
return (HashMap<String, List>) oResult;
}
if (t.compareToIgnoreCase("String") == 0) {
if (r.isString() != null) {
return (String) r.isString().stringValue();
}
}
if (t.compareToIgnoreCase("Integer") == 0) {
if (r.isNumber() != null) {
return (Integer) new Integer((int) r.isNumber().doubleValue());
}
}
if (t.compareToIgnoreCase("Float") == 0) {
if (r.isNumber() != null) {
return (Float) new Float((float) r.isNumber().doubleValue());
}
}
if (t.compareToIgnoreCase("Boolean") == 0) {
if (r.isBoolean() != null) {
return (Boolean) r.isBoolean().booleanValue();
}
}
// If anything else bombs out...
GWT.log("Could not parse type " + t, null);
return null;
}
From source file:org.nuxeo.opensocial.container.client.utils.JSParams.java
License:Open Source License
public final Map<String, String> toMap() { Map<String, String> preferencesToReturn = new HashMap<String, String>(); JSONArray json = new JSONArray(this); if (size() != 0) { for (int i = 0; i < json.size(); i++) { JSONObject pref = (JSONObject) json.isArray().get(i); if (pref != null && pref.isObject() != null && pref.size() == 1) { for (String key : pref.keySet()) { if (pref.get(key).isString() != null) { preferencesToReturn.put(key, pref.get(key).isString().stringValue()); } else { return null; }/*from w w w . j a v a 2 s.c o m*/ } } else { return null; } } } return preferencesToReturn; }