Search in sources :

Example 6 with Node

use of com.google.gwt.xml.client.Node in project pentaho-platform by pentaho.

the class PermissionsPanel method updatePermissionForUserOrRole.

/**
 * @param recipient
 * @param grant     true = grant the Permission, false = deny the Permission (remove it if present)
 * @param perm      The integer value of the Permission as defined in <code>RepositoryFilePermissions</code>
 */
private void updatePermissionForUserOrRole(Document fileInfo, String recipient, String recipientType, boolean grant, int perm) {
    // first let's see if this node exists
    Node foundPermission = null;
    NodeList aces = fileInfo.getElementsByTagName(ACES_ELEMENT_NAME);
    for (int i = 0; i < aces.getLength(); i++) {
        Element ace = (Element) aces.item(i);
        if (ace.getElementsByTagName(RECIPIENT_ELEMENT_NAME).item(0).getFirstChild().getNodeValue().equals(recipient) && ace.getElementsByTagName(RECIPIENT_TYPE_ELEMENT_NAME).item(0).getFirstChild().getNodeValue().equals(recipientType)) {
            NodeList permissions = ace.getElementsByTagName(PERMISSIONS_ELEMENT_NAME);
            for (int j = 0; j < permissions.getLength(); j++) {
                Node testNode = permissions.item(j);
                if (testNode.getFirstChild() != null && Integer.parseInt(testNode.getFirstChild().getNodeValue()) == perm) {
                    foundPermission = testNode;
                    break;
                }
            }
            break;
        }
    }
    if (grant) {
        if (foundPermission != null) {
            // This permission already exists.
            return;
        }
        addPermission(recipient, recipientType, perm, fileInfo);
    } else {
        if (foundPermission != null) {
            foundPermission.getParentNode().removeChild(foundPermission);
        }
    }
}
Also used : Node(com.google.gwt.xml.client.Node) NodeList(com.google.gwt.xml.client.NodeList) Element(com.google.gwt.xml.client.Element)

Example 7 with Node

use of com.google.gwt.xml.client.Node in project data-access by pentaho.

the class DatabaseConnectionConverter method getNodesByTagName.

/*
   * Return all node matching the tagName, starting from the current element
   * location
   */
private List<Node> getNodesByTagName(Element element, String tagName) {
    List<Node> nodes = new ArrayList<Node>();
    NodeList list = element.getChildNodes();
    for (int i = 0; i < list.getLength(); i++) {
        Node node = list.item(i);
        if (node != null && node.getNodeName().equals(tagName)) {
            nodes.add(node);
        }
    }
    return nodes;
}
Also used : Node(com.google.gwt.xml.client.Node) NodeList(com.google.gwt.xml.client.NodeList) ArrayList(java.util.ArrayList)

Example 8 with Node

use of com.google.gwt.xml.client.Node in project data-access by pentaho.

the class DatabaseConnectionConverter method convertToObject.

public IDatabaseConnection convertToObject(String xml) {
    Document document = XMLParser.parse(xml);
    Element element = document.getDocumentElement();
    IDatabaseConnection databaseConnection = new DatabaseConnection();
    databaseConnection.setDatabaseName(getNodeValueByTagName(element, DATABASE_NAME));
    databaseConnection.setHostname(getNodeValueByTagName(element, HOSTNAME));
    databaseConnection.setIndexTablespace(getNodeValueByTagName(element, INDEX_TABLESPACE));
    databaseConnection.setDataTablespace(getNodeValueByTagName(element, DATA_TABLESPACE));
    databaseConnection.setName(getNodeValueByTagName(element, NAME));
    databaseConnection.setUsername(getNodeValueByTagName(element, USERNAME));
    databaseConnection.setPassword(getNodeValueByTagName(element, PASSWORD));
    databaseConnection.setDatabasePort(getNodeValueByTagName(element, DATABASE_PORT));
    databaseConnection.setAccessType(DatabaseAccessType.getAccessTypeByName(getNodeValueByTagName(element, ACCESS_TYPE)));
    databaseConnection.setDatabaseType((DatabaseType) databaseTypeHelper.getDatabaseTypeByShortName(getNodeValueByTagName(element, DATABASE_TYPE)));
    databaseConnection.setPassword(getNodeValueByTagName(element, PASSWORD));
    databaseConnection.setInformixServername(getNodeValueByTagName(element, SERVER_NAME));
    for (Node node : getNodesByTagName(element, ATTRIBUTES)) {
        databaseConnection.getAttributes().put(node.getNodeName(), node.getNodeValue());
    }
    return databaseConnection;
}
Also used : Element(com.google.gwt.xml.client.Element) Node(com.google.gwt.xml.client.Node) DatabaseConnection(org.pentaho.database.model.DatabaseConnection) IDatabaseConnection(org.pentaho.database.model.IDatabaseConnection) IDatabaseConnection(org.pentaho.database.model.IDatabaseConnection) Document(com.google.gwt.xml.client.Document)

Example 9 with Node

use of com.google.gwt.xml.client.Node in project data-access by pentaho.

the class DatasourceServiceManagerGwtImpl method convertReponseToList.

private List<String> convertReponseToList(Response response) {
    List<String> dataList = new ArrayList<String>();
    Document document = (Document) XMLParser.parse(response.getText());
    Element element = document.getDocumentElement();
    Node node = element.getFirstChild();
    boolean done = false;
    do {
        try {
            dataList.add(getNodeValueByTagName(node, "Item"));
            node = (node.getNextSibling() != null) ? node.getNextSibling() : null;
            if (node == null) {
                done = true;
            }
        } catch (Exception e) {
            done = true;
        }
    } while (!done);
    return dataList;
}
Also used : Element(com.google.gwt.xml.client.Element) Node(com.google.gwt.xml.client.Node) ArrayList(java.util.ArrayList) Document(com.google.gwt.xml.client.Document) RequestException(com.google.gwt.http.client.RequestException)

Aggregations

Node (com.google.gwt.xml.client.Node)9 NodeList (com.google.gwt.xml.client.NodeList)7 Element (com.google.gwt.xml.client.Element)6 Document (com.google.gwt.xml.client.Document)4 ArrayList (java.util.ArrayList)4 RequestBuilder (com.google.gwt.http.client.RequestBuilder)2 RequestException (com.google.gwt.http.client.RequestException)2 Request (com.google.gwt.http.client.Request)1 RequestCallback (com.google.gwt.http.client.RequestCallback)1 Response (com.google.gwt.http.client.Response)1 Text (com.google.gwt.xml.client.Text)1 List (java.util.List)1 DatabaseConnection (org.pentaho.database.model.DatabaseConnection)1 IDatabaseConnection (org.pentaho.database.model.IDatabaseConnection)1 IDialogCallback (org.pentaho.gwt.widgets.client.dialogs.IDialogCallback)1 OverwritePromptDialog (org.pentaho.mantle.client.dialogs.OverwritePromptDialog)1 SolutionBrowserClipboard (org.pentaho.mantle.client.solutionbrowser.SolutionBrowserClipboard)1 SolutionBrowserFile (org.pentaho.mantle.client.solutionbrowser.SolutionBrowserFile)1