Search in sources :

Example 1 with Element

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

the class AdhocRunInBackgroundCommand method parseFolderId.

private RequestBuilder parseFolderId(Response response) {
    String folderId = null;
    Document repository = XMLParser.parse(response.getText());
    NodeList fileNodeList = repository.getElementsByTagName("file");
    for (int i = 0; i < fileNodeList.getLength(); i++) {
        Element element = (Element) fileNodeList.item(i);
        Node pathNode = element.getElementsByTagName("path").item(0);
        if (getOutputLocationPath().equals(pathNode.getFirstChild().getNodeValue())) {
            folderId = element.getElementsByTagName("id").item(0).getFirstChild().getNodeValue();
        }
    }
    RequestBuilder scheduleFileRequestBuilder = new RequestBuilder(RequestBuilder.POST, contextURL + "plugin/reporting/api/jobs/" + jobId + "/schedule?confirm=true&folderId=" + folderId + "&newName=" + getOutputName() + "&recalculateFinished=" + getRecalculateFinished());
    scheduleFileRequestBuilder.setHeader("Content-Type", "application/json");
    scheduleFileRequestBuilder.setHeader("If-Modified-Since", "01 Jan 1970 00:00:00 GMT");
    return scheduleFileRequestBuilder;
}
Also used : RequestBuilder(com.google.gwt.http.client.RequestBuilder) NodeList(com.google.gwt.xml.client.NodeList) Element(com.google.gwt.xml.client.Element) Node(com.google.gwt.xml.client.Node) Document(com.google.gwt.xml.client.Document)

Example 2 with Element

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

the class CheckForSoftwareUpdatesCommand method performOperation.

protected void performOperation(boolean feedback) {
    // $NON-NLS-1$
    final String url = GWT.getHostPageBaseURL() + "api/version/softwareUpdates";
    RequestBuilder requestBuilder = new RequestBuilder(RequestBuilder.GET, url);
    requestBuilder.setHeader("If-Modified-Since", "01 Jan 1970 00:00:00 GMT");
    requestBuilder.setHeader("accept", "text/plain");
    try {
        requestBuilder.sendRequest(null, new RequestCallback() {

            public void onError(Request request, Throwable exception) {
                MessageDialogBox dialogBox = new MessageDialogBox(Messages.getString("softwareUpdates"), Messages.getString("noUpdatesAvailable"), false, false, // $NON-NLS-1$ //$NON-NLS-2$
                true);
                dialogBox.center();
            }

            public void onResponseReceived(Request request, Response response) {
                Document doc = XMLParser.parse(response.getText());
                // $NON-NLS-1$
                NodeList updates = doc.getElementsByTagName("update");
                if (updates.getLength() > 0) {
                    FlexTable updateTable = new FlexTable();
                    // $NON-NLS-1$
                    updateTable.setStyleName("backgroundContentTable");
                    // $NON-NLS-1$
                    updateTable.setWidget(0, 0, new Label(Messages.getString("version")));
                    // $NON-NLS-1$
                    updateTable.setWidget(0, 1, new Label(Messages.getString("type")));
                    // $NON-NLS-1$
                    updateTable.setWidget(0, 2, new Label(Messages.getString("os")));
                    // $NON-NLS-1$
                    updateTable.setWidget(0, 3, new Label(Messages.getString("link")));
                    // $NON-NLS-1$
                    updateTable.getCellFormatter().setStyleName(0, 0, "backgroundContentHeaderTableCell");
                    // $NON-NLS-1$
                    updateTable.getCellFormatter().setStyleName(0, 1, "backgroundContentHeaderTableCell");
                    // $NON-NLS-1$
                    updateTable.getCellFormatter().setStyleName(0, 2, "backgroundContentHeaderTableCell");
                    // $NON-NLS-1$
                    updateTable.getCellFormatter().setStyleName(0, 3, "backgroundContentHeaderTableCellRight");
                    for (int i = 0; i < updates.getLength(); i++) {
                        Element updateElement = (Element) updates.item(i);
                        // $NON-NLS-1$
                        String version = updateElement.getAttribute("version");
                        // $NON-NLS-1$
                        String type = updateElement.getAttribute("type");
                        // $NON-NLS-1$
                        String os = updateElement.getAttribute("os");
                        // String title = updateElement.getAttribute("title");
                        // $NON-NLS-1$
                        String downloadURL = updateElement.getElementsByTagName("downloadurl").item(0).toString();
                        // $NON-NLS-1$ //$NON-NLS-2$
                        downloadURL = downloadURL.substring(downloadURL.indexOf("http"), downloadURL.indexOf("]"));
                        updateTable.setWidget(i + 1, 0, new Label(version));
                        updateTable.setWidget(i + 1, 1, new Label(type));
                        updateTable.setWidget(i + 1, 2, new Label(os));
                        updateTable.setWidget(i + 1, 3, new HTML("<A HREF=\"" + downloadURL + "\" target=\"_blank\" title=\"" + downloadURL + "\">" + Messages.getString("download") + // $NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$ //$NON-NLS-5$
                        "</A>"));
                        // $NON-NLS-1$
                        updateTable.getCellFormatter().setStyleName(i + 1, 0, "backgroundContentTableCell");
                        // $NON-NLS-1$
                        updateTable.getCellFormatter().setStyleName(i + 1, 1, "backgroundContentTableCell");
                        // $NON-NLS-1$
                        updateTable.getCellFormatter().setStyleName(i + 1, 2, "backgroundContentTableCell");
                        // $NON-NLS-1$
                        updateTable.getCellFormatter().setStyleName(i + 1, 3, "backgroundContentTableCellRight");
                        if (i == updates.getLength() - 1) {
                            // last
                            // $NON-NLS-1$
                            updateTable.getCellFormatter().setStyleName(i + 1, 0, "backgroundContentTableCellBottom");
                            // $NON-NLS-1$
                            updateTable.getCellFormatter().setStyleName(i + 1, 1, "backgroundContentTableCellBottom");
                            // $NON-NLS-1$
                            updateTable.getCellFormatter().setStyleName(i + 1, 2, "backgroundContentTableCellBottom");
                            // $NON-NLS-1$
                            updateTable.getCellFormatter().setStyleName(i + 1, 3, "backgroundContentTableCellBottomRight");
                        }
                    }
                    PromptDialogBox versionPromptDialog = new PromptDialogBox(Messages.getString("softwareUpdateAvailable"), Messages.getString("ok"), null, false, true, // $NON-NLS-1$ //$NON-NLS-2$
                    updateTable);
                    versionPromptDialog.center();
                } else {
                    MessageDialogBox dialogBox = new MessageDialogBox(Messages.getString("softwareUpdates"), Messages.getString("noUpdatesAvailable"), false, false, // $NON-NLS-1$ //$NON-NLS-2$
                    true);
                    dialogBox.center();
                }
            }
        });
    } catch (RequestException e) {
        Window.alert(e.getMessage());
    // showError(e);
    }
}
Also used : RequestBuilder(com.google.gwt.http.client.RequestBuilder) MessageDialogBox(org.pentaho.gwt.widgets.client.dialogs.MessageDialogBox) PromptDialogBox(org.pentaho.gwt.widgets.client.dialogs.PromptDialogBox) NodeList(com.google.gwt.xml.client.NodeList) Element(com.google.gwt.xml.client.Element) Request(com.google.gwt.http.client.Request) FlexTable(com.google.gwt.user.client.ui.FlexTable) Label(com.google.gwt.user.client.ui.Label) HTML(com.google.gwt.user.client.ui.HTML) Document(com.google.gwt.xml.client.Document) RequestException(com.google.gwt.http.client.RequestException) Response(com.google.gwt.http.client.Response) RequestCallback(com.google.gwt.http.client.RequestCallback)

Example 3 with Element

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

the class PermissionsPanel method replacePermissionsWithAll.

private void replacePermissionsWithAll(Element ace, Document fileInfo) {
    NodeList perms = ace.getElementsByTagName(PERMISSIONS_ELEMENT_NAME);
    int childCount = perms.getLength();
    for (int i = 0; i < childCount; i++) {
        Node perm = perms.item(i);
        if (perm != null) {
            ace.removeChild(perm);
        }
    }
    Element newPerm = fileInfo.createElement(PERMISSIONS_ELEMENT_NAME);
    Text textNode = fileInfo.createTextNode(Integer.toString(PERM_ALL));
    newPerm.appendChild(textNode);
    ace.appendChild(newPerm);
}
Also used : NodeList(com.google.gwt.xml.client.NodeList) Node(com.google.gwt.xml.client.Node) Element(com.google.gwt.xml.client.Element) Text(com.google.gwt.xml.client.Text)

Example 4 with Element

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

the class PermissionsPanel method getNames.

/**
 * @param type
 * @return list of names of given "type"
 */
protected List<String> getNames(final Document fileInfo, int type) {
    List<String> names = new ArrayList<String>();
    NodeList aces = fileInfo.getElementsByTagName(ACES_ELEMENT_NAME);
    for (int i = 0; i < aces.getLength(); i++) {
        Element ace = (Element) aces.item(i);
        NodeList recipientTypeList = ace.getElementsByTagName(RECIPIENT_TYPE_ELEMENT_NAME);
        Node recipientNode = recipientTypeList.item(0);
        String nodeValue = recipientNode.getFirstChild().getNodeValue();
        int recipientType = Integer.parseInt(nodeValue);
        if (recipientType == type) {
            names.add(ace.getElementsByTagName(RECIPIENT_ELEMENT_NAME).item(0).getFirstChild().getNodeValue());
        }
    }
    return names;
}
Also used : NodeList(com.google.gwt.xml.client.NodeList) Element(com.google.gwt.xml.client.Element) Node(com.google.gwt.xml.client.Node) ArrayList(java.util.ArrayList)

Example 5 with Element

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

the class PermissionsPanel method getPermissionsForUserOrRole.

/**
 * @param recipient
 * @return
 */
private List<Integer> getPermissionsForUserOrRole(Document fileInfo, String recipient, String recipientType) {
    List<Integer> values = new ArrayList<Integer>();
    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++) {
                if (permissions.item(j).getFirstChild() != null) {
                    values.add(new Integer(permissions.item(j).getFirstChild().getNodeValue()));
                }
            }
            break;
        }
    }
    return values;
}
Also used : NodeList(com.google.gwt.xml.client.NodeList) Element(com.google.gwt.xml.client.Element) ArrayList(java.util.ArrayList)

Aggregations

Element (com.google.gwt.xml.client.Element)16 NodeList (com.google.gwt.xml.client.NodeList)9 Document (com.google.gwt.xml.client.Document)8 Node (com.google.gwt.xml.client.Node)6 ArrayList (java.util.ArrayList)5 Text (com.google.gwt.xml.client.Text)4 RequestBuilder (com.google.gwt.http.client.RequestBuilder)3 GwtTestTest (com.googlecode.gwt.test.GwtTestTest)3 Test (org.junit.Test)3 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 FlexTable (com.google.gwt.user.client.ui.FlexTable)1 HTML (com.google.gwt.user.client.ui.HTML)1 Label (com.google.gwt.user.client.ui.Label)1 DatabaseConnection (org.pentaho.database.model.DatabaseConnection)1 IDatabaseConnection (org.pentaho.database.model.IDatabaseConnection)1 MessageDialogBox (org.pentaho.gwt.widgets.client.dialogs.MessageDialogBox)1 PromptDialogBox (org.pentaho.gwt.widgets.client.dialogs.PromptDialogBox)1