Package edu.isi.karma.rep

Examples of edu.isi.karma.rep.Node


    ArrayList<Row> rows = oldDataTable.getRows(0, oldDataTable.getNumRows(), sel);
    for (Row row : rows) {
      Row newrow = newDataTable.addRow(factory);
      for (HNode hnode : hnodes) {
        HNode newHNode = newHTable.getHNodeFromColumnName(hnode.getColumnName());
        Node oldNode = row.getNode(hnode.getId());
        Node newNode = newrow.getNode(newHNode.getId());
        if (!oldNode.hasNestedTable()) {
          newNode.setValue(oldNode.getValue(), oldNode.getStatus(), factory);
        }
        else {         
          cloneDataTable(oldNode.getNestedTable(), newNode.getNestedTable(), hnode.getNestedTable(), newHNode.getNestedTable(), hnode.getNestedTable().getSortedHNodes(), factory, sel);
        }
      }
    }
  }
View Full Code Here


      Table dataTable = node.getNestedTable();
      JSONArray array = new JSONArray();
      for (Row row : dataTable.getRows(0, dataTable.getNumRows(), sel)) {
        JSONObject obj = new JSONObject();
        for (HNode hnode : nestHT.getHNodes()) {
          Node n = row.getNode(hnode.getId());
          obj.put(hnode.getColumnName(),cloneNodeToJSON(hnode, n, sel));
        }
        array.put(obj);
      }
      return array;
View Full Code Here

  private ArrayList<VHNode> getNestedNodeList(Row row, ArrayList<VHNode> nodeList) {
    ArrayList<VHNode> result = null;
    for (VHNode vNode : nodeList) {
      if(vNode.isVisible()) {
        Node rowNode = row.getNode(vNode.getId());
        if(rowNode != null)
          return nodeList;
       
        if (vNode.hasNestedTable()) {
          result =  getNestedNodeList(row, vNode.getNestedNodes());
View Full Code Here

    JSONArray input = new JSONArray();
    for (Row row : rows) {
      String id = row.getId();
      JSONArray t = new JSONArray();
      for (HNode hnode : hnodes) {
        Node node = row.getNode(hnode.getId());
        String name = hnode.getColumnName();
        Object value = CloneTableUtils.cloneNodeToJSON(hnode, node, selection);
        JSONObject obj = new JSONObject();
        JSONObject obj2 = new JSONObject();
        if (value instanceof String)
View Full Code Here

      rowObj.put(JsonKeys.rowId.name(), row.getId());
      rowObj.put(JsonKeys.isSelected.name(), selection.isSelected(row));
      rowObj.put(JsonKeys.rowValueArray.name(), rowValueArray);
      for (VHNode vNode : orderedHnodeIds) {
        if(vNode.isVisible()) {
          Node rowNode = row.getNode(vNode.getId());
          JSONObject nodeObj = new JSONObject();
          nodeObj.put(JsonKeys.columnClass.name(),
              WorksheetHeadersUpdate.getColumnClass(vNode.getId()));
          nodeObj.put(JsonKeys.nodeId.name(), rowNode.getId());

          if (vNode.hasNestedTable()) {
            nodeObj.put(JsonKeys.hasNestedTable.name(), true);
            Table nestedTable = rowNode.getNestedTable();
            JSONArray nestedTableRows = getRowsUsingPager(
                vWorksheet.getNestedTablePager(nestedTable),
                vWorksheet,
                vNode.getNestedNodes(),
                maxDataDisplayLength);
            nodeObj.put(JsonKeys.nestedRows.name(), nestedTableRows);
            nodeObj.put(JsonKeys.tableId.name(), rowNode.getNestedTable().getId());

            int rowsLeft = nestedTable.getNumRows() - nestedTableRows.length();
            rowsLeft = rowsLeft < 0 ? 0 : rowsLeft;
            nodeObj.put(JsonKeys.additionalRowsCount.name(), rowsLeft);

          } else {
            String nodeVal = rowNode.getValue().asString();
            nodeVal = (nodeVal == null) ? "" : nodeVal;
            String displayVal = (nodeVal.length() > maxDataDisplayLength)
                ? nodeVal.substring(0, maxDataDisplayLength) + "..." : nodeVal;
            nodeObj.put(JsonKeys.displayValue.name(), displayVal);
            nodeObj.put(JsonKeys.expandedValue.name(), nodeVal);
View Full Code Here

    if (implMethod != GlueMethod.CrossProduct) {
      int max = implMethod == GlueMethod.Longest ? Integer.MIN_VALUE : Integer.MAX_VALUE;
      for (HNode hnode : hnodes) {
        if (!hnode.hasNestedTable())
          continue;
        Node tmp = row.getNeighbor(hnode.getId());
        int size = tmp.getNestedTable().getRows(0, tmp.getNestedTable().getNumRows(), selection).size();
        if (size > max && implMethod == GlueMethod.Longest) {
          max = size;
        }
        if (size < max && implMethod == GlueMethod.Shortest) {
          max = size;
        }
      }
      List<Row> newRows = new ArrayList<Row>();
      for (int i = 0; i < max; i++)
        newRows.add(nestedTable.addRow(factory));
      for (HNode hnode : hnodes) {
        if (!hnode.hasNestedTable())
          continue;
        Node tmp = row.getNeighbor(hnode.getId());
        int i = 0;
        for (Row nestedRow : tmp.getNestedTable().getRows(0, tmp.getNestedTable().getNumRows(), selection)) {
          if (i >= max) {
            break;
          }
          CloneTableUtils.cloneDataTableExistingRow(nestedRow, newRows.get(i), nestedTable, hnode.getNestedTable(), newht, childHNodes, factory, mapping, selection);
          i++;
        }
      }
    }
    else {
      List<List<Row>> tablesToCross = new ArrayList<List<Row>>();
      for (HNode hnode : hnodes) {
        if (!hnode.hasNestedTable())
          continue;
        Node tmp = row.getNeighbor(hnode.getId());
        ArrayList<Row> rowsInTable = new ArrayList<Row>();
        tablesToCross.add(rowsInTable);
        for (Row nestedRow : tmp.getNestedTable().getRows(0, tmp.getNestedTable().getNumRows(), selection)) {
          rowsInTable.add(nestedRow);
        }
      }
      int size = tablesToCross.size();
      int enumeration[] = new int[size + 1];
View Full Code Here

      String rowSep = "";
      pw.println();
      pw.print(space + "{");
      for (VHNode vNode : orderedHnodeIds) {
        if(vNode.isVisible()) {
          Node rowNode = row.getNode(vNode.getId());
          if (vNode.hasNestedTable()) {
            JSONObject nodeObj = new JSONObject();
            String columnName = vNode.getColumnName();
            if(columnName == null || columnName.length() == 0)
              continue;
            nodeObj.put(columnName, "");
            String str = nodeObj.toString();
            pw.print(rowSep);
            pw.print(str.substring(1, str.length()-3));

            Table nestedTable = rowNode.getNestedTable();
            generateRowsUsingPager(
                vWorksheet.getNestedTablePager(nestedTable),
                vWorksheet,
                vNode.getNestedNodes(),
                pw, space + "  ");
          } else {
            JSONObject nodeObj = new JSONObject();
            String columnName = vNode.getColumnName();
            if(columnName == null || columnName.length() == 0)
              continue;
            nodeObj.put(columnName, rowNode.getValue().asString());
            String str = nodeObj.toString();
            pw.print(rowSep);
            pw.print(str.substring(1, str.length()-1));
          }
          rowSep = ",";
View Full Code Here

  private boolean evaluatePythonExpression(Row r, PyCode code, PythonInterpreter interpreter) {
    evalColumns.clear();
    try {
      ArrayList<Node> nodes = new ArrayList<Node>(r.getNodes());
      Node node = nodes.get(0);
      interpreter.set("nodeid", node.getId());
      PyObject output = interpreter.eval(code);
      return PythonTransformationHelper.getPyObjectValueAsBoolean(output);
    }catch(Exception e) {
      return onError;
    }
View Full Code Here

TOP

Related Classes of edu.isi.karma.rep.Node

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.