Example usage for com.google.gwt.json.client JSONArray isArray

List of usage examples for com.google.gwt.json.client JSONArray isArray

Introduction

In this page you can find the example usage for com.google.gwt.json.client JSONArray isArray.

Prototype

@Override
public JSONArray isArray() 

Source Link

Document

Returns this, as this is a JSONArray.

Usage

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;
}