Example usage for com.google.gwt.http.client RequestBuilder POST

List of usage examples for com.google.gwt.http.client RequestBuilder POST

Introduction

In this page you can find the example usage for com.google.gwt.http.client RequestBuilder POST.

Prototype

Method POST

To view the source code for com.google.gwt.http.client RequestBuilder POST.

Click Source Link

Document

Specifies that the HTTP POST method should be used.

Usage

From source file:org.datacleaner.monitor.query.widgets.QueryPanel.java

License:Open Source License

public QueryPanel(TenantIdentifier tenant, DatastoreServiceAsync service, DatastoreIdentifier datastore,
        SchemaIdentifier schema, List<TableIdentifier> tables) {
    super();//w w w .  j  a v a  2  s . c om
    setStyleName("QueryPanel");

    _tenant = tenant;
    _datastore = datastore;
    _queryTextArea = new TextArea();
    _queryTextArea.setStyleName("form-control");
    _queryTextArea.setHeight("6.5em");

    if (tables.isEmpty()) {
        writeQuery(null);
    } else {
        writeQuery(tables.get(0));

    }

    _executeQueryButton = DCButtons.primaryButton(null, "Ok");
    _executeQueryButton.addStyleName("btn-block");

    _loadingIcon = new LoadingIndicator();
    _loadingIcon.setVisible(false);
    _resultPanel = new HTML();
    _resultPanel.addStyleName("QueryResultPanel");

    final String url = Urls.createRepositoryUrl(_tenant, "datastores/" + _datastore.getName() + ".query");

    _executeQueryButton.addClickHandler(new ClickHandler() {
        @Override
        public void onClick(ClickEvent event) {
            final DCRequestBuilder requestBuilder = new DCRequestBuilder(RequestBuilder.POST, url);
            final String query = getCurrentQuery();
            _resultPanel.setVisible(false);
            _loadingIcon.setVisible(true);
            requestBuilder.send(query, new DCRequestCallback() {
                @Override
                protected void onSuccess(Request request, Response response) {
                    final String resultText = response.getText();
                    _resultPanel.setHTML(resultText);
                    _resultPanel.setVisible(true);
                }

                @Override
                public void onResponseReceived(Request request, Response response) {
                    _loadingIcon.setVisible(false);
                    if (response.getStatusCode() == 400) {
                        ErrorHandler.showErrorDialog("Failed to handle query!", response.getStatusText(),
                                (String) null);
                        return;
                    }
                    super.onResponseReceived(request, response);
                }
            });
        }
    });

    final SchemaTree schemaPanel = new SchemaTree(_tenant, _datastore, service);
    schemaPanel.addSelectionHandler(new SelectionHandler<TreeItem>() {
        @Override
        public void onSelection(SelectionEvent<TreeItem> event) {
            TreeItem selectedItem = event.getSelectedItem();
            if (selectedItem.getUserObject() instanceof TableIdentifier) {
                writeQuery((TableIdentifier) selectedItem.getUserObject());
            }
        }
    });

    add(schemaPanel);
    add(new HeadingLabel("Query datastore: " + _datastore.getName()));
    add(new Label("Please fill in your query below and click the 'Ok' button to execute it on the server."));

    final FlowPanel buttonPanel = new FlowPanel();
    buttonPanel.add(_queryTextArea);
    ;
    buttonPanel.add(_executeQueryButton);

    add(buttonPanel);
    add(_loadingIcon);
    add(_resultPanel);
}

From source file:org.datacleaner.monitor.scheduling.command.CopyJobCommand.java

License:Open Source License

@Override
public void execute() {
    _morePopup.hide();/*from   w w w.ja v a 2  s.  c o m*/
    final String newJobName = Window.prompt("Enter new job name", _job.getName() + " (Copy)");

    if (newJobName == null || newJobName.trim().length() == 0 || newJobName.equals(_job.getName())) {
        return;
    }

    final DCPopupPanel popup = new DCPopupPanel("Copying...");
    popup.setWidget(new LoadingIndicator());
    popup.center();
    popup.show();

    final String url = Urls.createRepositoryUrl(_tenant, "jobs/" + _job.getName() + ".copy");

    final JSONObject payload = new JSONObject();
    payload.put("name", new JSONString(newJobName));

    final DCRequestBuilder requestBuilder = new DCRequestBuilder(RequestBuilder.POST, url);
    requestBuilder.setHeader("Content-Type", "application/json");
    requestBuilder.send(payload.toString(), new DCRequestCallback() {
        @Override
        protected void onSuccess(Request request, Response response) {
            Window.Location.reload();
        }
    });
}

From source file:org.datacleaner.monitor.scheduling.command.DeleteJobCommand.java

License:Open Source License

@Override
public void execute() {
    _morePopup.hide();/*from  www  .j a v  a  2 s .c  o m*/
    boolean delete = Window.confirm("Are you sure you want to delete the job '" + _job.getName()
            + "' and related schedule, results and timelines.");
    if (delete) {
        final String url = Urls.createRepositoryUrl(_tenant, "jobs/" + _job.getName() + ".delete");
        final DCRequestBuilder requestBuilder = new DCRequestBuilder(RequestBuilder.POST, url);
        requestBuilder.setHeader("Content-Type", "application/json");
        requestBuilder.send("", new DCRequestCallback() {
            @Override
            protected void onSuccess(Request request, Response response) {
                Window.Location.reload();
            }
        });
    }
}

From source file:org.datacleaner.monitor.scheduling.command.RenameJobCommand.java

License:Open Source License

@Override
public void execute() {
    _morePopup.hide();// w w  w . j a  va  2  s. c om
    final String newName = Window.prompt("Enter job name", _job.getName());
    if (newName == null || newName.trim().length() == 0 || newName.equals(_job.getName())) {
        return;
    }

    final DCPopupPanel popup = new DCPopupPanel("Renaming...");
    popup.setWidget(new LoadingIndicator());
    popup.center();
    popup.show();

    final String url = Urls.createRepositoryUrl(_tenant, "jobs/" + _job.getName() + ".modify");

    final JSONObject payload = new JSONObject();
    payload.put("name", new JSONString(newName));

    final DCRequestBuilder requestBuilder = new DCRequestBuilder(RequestBuilder.POST, url);
    requestBuilder.setHeader("Content-Type", "application/json");
    requestBuilder.send(payload.toString(), new DCRequestCallback() {
        @Override
        protected void onSuccess(Request request, Response response) {
            Window.Location.reload();
        }

        @Override
        public void onNonSuccesfullStatusCode(Request request, Response response, int statusCode,
                String statusText) {
            popup.hide();
            ErrorHandler.showErrorDialog(response.getText());
        }
    });
}

From source file:org.daxplore.presenter.admin.model.ServerPost.java

License:Open Source License

public static void send(String href, RequestCallback requestCallback) {
    RequestBuilder builder = new RequestBuilder(RequestBuilder.POST, URL.encode(href));
    builder.setTimeoutMillis(10000); // TODO use reattempts with increasing times?
    try {/*from w ww . j av  a 2 s  .  c o m*/
        builder.sendRequest(null, requestCallback);
    } catch (RequestException e) {
        e.printStackTrace(); //TODO handle exception
    }
}

From source file:org.ebayopensource.turmeric.monitoring.client.model.MetricsQueryServiceImpl.java

License:Open Source License

/**
 * Gets the service operations json./*from  w  w  w  .j  ava2  s . co m*/
 * 
 * @param serviceMap
 *            the service map
 * @param callback
 *            the callback
 */
public void getServiceOperationsJSON(final Map<String, Set<String>> serviceMap,
        final AsyncCallback<Map<String, Set<String>>> callback) {

    final String url = MetricsMetaDataRequest.getJSONUrl();
    final String json = MetricsMetaDataRequest.getJSON("Service", serviceMap.keySet(), "Operation");
    RequestBuilder builder = new RequestBuilder(RequestBuilder.POST, URL.encode(url));
    try {
        builder.sendRequest(json, new RequestCallback() {

            public void onError(Request request, Throwable err) {
                callback.onFailure(err);
            }

            public void onResponseReceived(final Request request, final Response response) {
                if (response.getStatusCode() != Response.SC_OK) {
                    errorLogger.log(Level.SEVERE, "Errored request in getServiceOperationsJSON call: " + url
                            + " response code=" + response.getStatusCode() + " response=" + response.getText());
                    callback.onFailure(getErrorAsThrowable(response));
                } else if (response.getHeader(ERROR_HEADER) != null
                        && response.getHeader(ERROR_HEADER).length() > 0) {
                    errorLogger.log(Level.SEVERE, "Errored request in getServiceOperationsJSON call: " + url
                            + " Response=" + response.getText());
                    callback.onFailure(getErrorAsThrowable(response));
                } else {
                    MetricsMetaDataResponse metaDataResponse = MetricsMetaDataResponse
                            .fromJSON(response.getText());
                    if (metaDataResponse == null)
                        callback.onFailure(new Throwable(ConsoleUtil.messages.badOrMissingResponseData()));
                    else {
                        Set<String> operationNames = metaDataResponse.getOrderedResourceEntityResponseNames();
                        String error = null;
                        Iterator<String> itor = operationNames.iterator();
                        while (itor.hasNext() && error == null) {
                            String s = itor.next();

                            int dot = s.indexOf(".");
                            if (dot < 0) {
                                error = s;
                            } else {
                                Set<String> operations = serviceMap.get(s.substring(0, dot));
                                if (operations != null)
                                    operations.add(s.substring(dot + 1));
                            }
                        }
                        if (error != null)
                            callback.onFailure(new Throwable(error));
                        else
                            callback.onSuccess(serviceMap);
                    }
                }
            }
        });
    } catch (RequestException x) {
        errorLogger.log(Level.SEVERE, "Error in getServiceOperationsJSON call", x);
        callback.onFailure(x);
    }
}

From source file:org.ebayopensource.turmeric.policy.adminui.client.model.policy.PolicyQueryServiceImpl.java

License:Open Source License

/**
 * Update policy.//from   w ww .j a v a 2  s  .  c  o m
 * 
 * @param mode
 *            the mode
 * @param policy
 *            the policy
 * @param callback
 *            the callback
 * @see org.ebayopensource.turmeric.policy.adminui.client.model.policy.PolicyQueryService#updatePolicy(org.ebayopensource.turmeric.policy.adminui.client.model.policy.PolicyQueryService.UpdateMode,
 *      org.ebayopensource.turmeric.policy.adminui.client.model.policy.GenericPolicy,
 *      com.google.gwt.user.client.rpc.AsyncCallback)
 */
@Override
public void updatePolicy(UpdateMode mode, GenericPolicy policy,
        final AsyncCallback<UpdatePolicyResponse> callback) {
    if (policy == null)
        return;

    String url = BASE_POLICY_URL + "?" + getPartialUrl("updatePolicy", namespaces, RequestFormat.JSON);

    String json = "" + "{" + "   \"jsonns.ns1\":\"" + SECURITY_NAMESPACE + "\"," + "   \"jsonns.ns2\":\""
            + OASIS_NAMESPACE + "\"," + "   \"ns1.updatePolicyRequest\":{" + "   \"ns1.updateMode\": \""
            + mode.toString() + "\",";

    json += GenericPolicyConverter.toJSON(policy);

    json += "   }";
    json += "}";

    RequestBuilder builder = new RequestBuilder(RequestBuilder.POST, URL.encode(url));
    setSecurityHeaders(builder);
    try {
        builder.sendRequest(json, new RequestCallback() {

            public void onError(Request request, Throwable err) {
                callback.onFailure(err);
            }

            public void onResponseReceived(Request request, Response response) {
                if (response.getStatusCode() != Response.SC_OK) {
                    callback.onFailure(new Throwable(
                            PolicyAdminUIUtil.constants.error() + " " + response.getStatusCode()));
                } else if (response.getHeader(ERROR_HEADER) != null
                        && response.getHeader(ERROR_HEADER).length() > 0) {
                    callback.onFailure(getErrorAsThrowable(UpdatePolicyResponseJS.NAME, response));
                } else {
                    // convert response.getText() to JSON
                    UpdatePolicyResponse updateResponse = UpdatePolicyResponseJS.fromJSON(response.getText());
                    if (updateResponse.isErrored())
                        callback.onFailure(getErrorAsThrowable(UpdatePolicyResponseJS.NAME, response));
                    else
                        callback.onSuccess(updateResponse);
                }
            }
        });
    } catch (RequestException x) {
        callback.onFailure(x);
    }

}

From source file:org.eclipse.che.api.vfs.gwt.client.VfsServiceClientImpl.java

License:Open Source License

@Override
public void replace(@NotNull String workspaceId, @NotNull String projectPath,
        List<ReplacementSet> replacementSets, AsyncRequestCallback<Void> callback) {
    String path = extPath + "/vfs/" + workspaceId + "/v2/replace" + normalizePath(projectPath);

    asyncRequestFactory.createRequest(RequestBuilder.POST, path, replacementSets, false)
            .header(CONTENT_TYPE, APPLICATION_JSON).loader(loader).send(callback);
}

From source file:org.eclipse.che.ide.ext.java.client.search.JavaSearchServiceWS.java

License:Open Source License

@Override
public Promise<FindUsagesResponse> findUsages(final FindUsagesRequest request) {
    final MessageBus messageBus = provider.getMachineMessageBus();

    return PromiseHelper.newPromise(new AsyncPromiseHelper.RequestCall<FindUsagesResponse>() {
        @Override/*  w w w  . j a va2s .  c o  m*/
        public void makeCall(final AsyncCallback<FindUsagesResponse> callback) {
            MessageBuilder builder = new MessageBuilder(RequestBuilder.POST, pathToService + "find/usages");
            builder.data(dtoFactory.toJson(request)).header(CONTENTTYPE, APPLICATION_JSON).header(ACCEPT,
                    APPLICATION_JSON);
            loader.show();
            try {
                messageBus.send(builder.build(), new RequestCallback<FindUsagesResponse>(
                        unmarshallerFactory.newWSUnmarshaller(FindUsagesResponse.class)) {
                    @Override
                    protected void onSuccess(FindUsagesResponse result) {
                        loader.hide();
                        callback.onSuccess(result);
                    }

                    @Override
                    protected void onFailure(Throwable exception) {
                        loader.hide();
                        callback.onFailure(exception);
                    }
                });
            } catch (WebSocketException e) {
                loader.hide();
                callback.onFailure(e);
            }
        }
    });
}

From source file:org.eclipse.che.ide.rest.AsyncRequestFactory.java

License:Open Source License

/**
 * Creates new POST request to the specified {@code url} with the provided {@code data}.
 *
 * @param url//  ww  w  .j  av  a  2s  . c  o m
 *         request URL
 * @param dtoData
 *         the DTO to send as body of the request. Must implement {@link org.eclipse.che.ide.dto.JsonSerializable} interface. May be {@code
 *         null}.
 * @param async
 *         if <b>true</b> - request will be sent in asynchronous mode
 * @return new {@link AsyncRequest} instance to send POST request
 */
public AsyncRequest createPostRequest(String url, Object dtoData, boolean async) {
    return createRequest(RequestBuilder.POST, url, dtoData, async);
}