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.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 .jav a 2  s . c  o  m
 *         request URL
 * @param dtoArray
 *         the array of DTO to send as body of the request. Must contain objects that 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, List<Object> dtoArray, boolean async) {
    return createRequest(RequestBuilder.POST, url, dtoArray, async);
}

From source file:org.eclipse.che.ide.websocket.AbstractMessageBus.java

License:Open Source License

public AbstractMessageBus(String wsConnectionUrl) {
    this.wsConnectionUrl = wsConnectionUrl;

    this.requestCallbackMap = new HashMap<>();
    this.replyCallbackMap = new HashMap<>();
    this.channelToSubscribersMap = new HashMap<>();
    this.connectionOpenedHandlers = ListenerManager.create();
    this.connectionClosedHandlers = ListenerManager.create();
    this.connectionErrorHandlers = ListenerManager.create();
    this.messages2send = new ArrayList<>();

    MessageBuilder builder = new MessageBuilder(RequestBuilder.POST, null);
    builder.header("x-everrest-websocket-message-type", "ping");
    heartbeatMessage = builder.build();// w  w  w. j ava2s .co  m

    if (isSupported()) {
        initialize();
    }

    this.heartbeatTimer = new Timer() {
        @Override
        public void run() {
            Message message = getHeartbeatMessage();
            try {
                send(message, null);
            } catch (WebSocketException e) {
                if (getReadyState() == ReadyState.CLOSED) {
                    wsListener.onClose(new WebSocketClosedEvent());
                } else {
                    Log.error(MessageBus.class, e);
                }
            }
        }
    };

    this.reconnectionTimer = new Timer() {
        @Override
        public void run() {
            if (reconnectionAttemptsCounter == MAX_RECONNECTION_ATTEMPTS) {
                cancel();
                reconnectionCallback.onFailure(
                        new Exception("The maximum number of reconnection attempts has been reached"));
                return;
            }
            reconnectionAttemptsCounter++;
            initialize();
        }
    };
}

From source file:org.eclipse.che.ide.websocket.AbstractMessageBus.java

License:Open Source License

/** {@inheritDoc} */
@Override//from w w w  . j  ava  2  s  .co m
public void send(String address, String message, ReplyHandler replyHandler) throws WebSocketException {
    checkWebSocketConnectionState();

    MessageBuilder builder = new MessageBuilder(RequestBuilder.POST, address);
    builder.header("content-type", "application/json").data(message);

    Message requestMessage = builder.build();

    String textMessage = requestMessage.serialize();
    String uuid = requestMessage.getStringField(MessageBuilder.UUID_FIELD);
    internalSend(uuid, textMessage, replyHandler);
}

From source file:org.eclipse.che.ide.websocket.AbstractMessageBus.java

License:Open Source License

/**
 * Send message with subscription info./*www  .j a  v a 2  s.  c  o m*/
 *
 * @param channel
 *         channel identifier
 * @throws WebSocketException
 *         throws if an any error has occurred while sending data
 */
private void sendSubscribeMessage(String channel) throws WebSocketException {
    MessageBuilder builder = new MessageBuilder(RequestBuilder.POST, null);
    builder.header(MESSAGE_TYPE_HEADER_NAME, "subscribe-channel").data("{\"channel\":\"" + channel + "\"}");

    Message message = builder.build();
    send(message, null);
}

From source file:org.eclipse.che.ide.websocket.AbstractMessageBus.java

License:Open Source License

/**
 * Send message with unsubscription info.
 *
 * @param channel/* ww  w  .j  a  va 2 s.  c o m*/
 *         channel identifier
 * @throws WebSocketException
 *         throws if an any error has occurred while sending data
 */
private void sendUnsubscribeMessage(String channel) throws WebSocketException {
    MessageBuilder builder = new MessageBuilder(RequestBuilder.POST, null);
    builder.header(MESSAGE_TYPE_HEADER_NAME, "unsubscribe-channel").data("{\"channel\":\"" + channel + "\"}");

    Message message = builder.build();
    send(message, null);
}

From source file:org.eclipse.che.multiuser.keycloak.ide.KeycloakAsyncRequestFactory.java

License:Open Source License

@Override
protected AsyncRequest doCreateRequest(RequestBuilder.Method method, String url, Object dtoBody,
        boolean async) {
    AsyncRequest request = super.doCreateRequest(method, url, dtoBody, async);
    if (!isWsAgentRequest(url) && !keycloakProvider.isKeycloakDisabled()) {
        AsyncRequest asyncRequest = new KeycloakAsyncRequest(keycloakProvider, method, url, async);
        if (dtoBody != null) {
            if (dtoBody instanceof List<?>) {
                asyncRequest.data(dtoFactory.toJson((List<?>) dtoBody));
            } else if (dtoBody instanceof String) {
                asyncRequest.data((String) dtoBody);
            } else {
                asyncRequest.data(dtoFactory.toJson(dtoBody));
            }/*  w  ww  .j  a  v a 2 s .  c  o m*/
            asyncRequest.header(HTTPHeader.CONTENT_TYPE, MimeType.APPLICATION_JSON);
        } else if (method.equals(RequestBuilder.POST) || method.equals(RequestBuilder.PUT)) {

            /*
              Here we need to setup wildcard mime type in content-type header, because CORS filter
              responses with 403 error in case if user makes POST/PUT request with null body and without
              content-type header. Setting content-type header with wildcard mime type solves this problem.
              Note, this issue need to be investigated, because the problem may be occurred as a bug in
              CORS filter.
            */

            asyncRequest.header(HTTPHeader.CONTENT_TYPE, MimeType.WILDCARD);
        }
        return asyncRequest;
    }
    return request;
}

From source file:org.eclipse.che.multiuser.machine.authentication.ide.MachineAsyncRequestFactory.java

License:Open Source License

private boolean isModifyingMethod(RequestBuilder.Method method) {
    return method == RequestBuilder.POST || method == RequestBuilder.PUT || method == RequestBuilder.DELETE;
}

From source file:org.eclipse.kura.web.client.ui.EntryClassUi.java

License:Open Source License

private void installMarketplaceDp(final String uri) {
    String url = "/" + GWT.getModuleName() + "/file/deploy/url";
    final RequestBuilder builder = new RequestBuilder(RequestBuilder.POST, URL.encode(url));

    this.gwtXSRFService.generateSecurityToken(new AsyncCallback<GwtXSRFToken>() {

        @Override//from  w  w w .j  a  v  a  2  s  .co m
        public void onFailure(Throwable ex) {
            EntryClassUi.hideWaitModal();
            FailureHandler.handle(ex, EntryClassUi.class.getName());
        }

        @Override
        public void onSuccess(GwtXSRFToken token) {
            StringBuilder sb = new StringBuilder();
            sb.append("xsrfToken=" + token.getToken());
            sb.append("&packageUrl=" + uri);

            builder.setHeader("Content-type", "application/x-www-form-urlencoded");
            try {
                builder.sendRequest(sb.toString(), new RequestCallback() {

                    @Override
                    public void onResponseReceived(Request request, Response response) {
                        logger.info(response.getText());
                    }

                    @Override
                    public void onError(Request request, Throwable ex) {
                        logger.log(Level.SEVERE, ex.getMessage(), ex);
                        FailureHandler.handle(ex, EntryClassUi.class.getName());
                    }

                });
            } catch (RequestException e) {
                logger.log(Level.SEVERE, e.getMessage(), e);
                FailureHandler.handle(e, EntryClassUi.class.getName());
            }
        }
    });
}

From source file:org.eclipselabs.emfjson.gwt.handlers.HttpHandler.java

License:Open Source License

@Override
public void store(URI uri, byte[] bytes, Map<?, ?> options, final Callback<Map<?, ?>> callback) {
    RequestBuilder builder = new RequestBuilder(RequestBuilder.POST, URL.encode(uri.toString()));

    String data = new String(bytes);
    try {//from w ww.j  ava2  s  .c om
        builder.sendRequest(data, new RequestCallback() {
            @Override
            public void onResponseReceived(Request request, Response response) {
                Map<String, Object> resultMap = new HashMap<String, Object>();
                Map<String, Object> responseMap = new HashMap<String, Object>();
                resultMap.put(URIConverter.OPTION_RESPONSE, responseMap);

                int code = response.getStatusCode();
                if (code > 200 && code < 300) {
                    responseMap.put(URIConverter.RESPONSE_RESULT, null);
                    responseMap.put(URIConverter.RESPONSE_TIME_STAMP_PROPERTY, null);
                    responseMap.put(URIConverter.RESPONSE_URI, null);
                }

                callback.onSuccess(resultMap);
            }

            @Override
            public void onError(Request request, Throwable exception) {
                callback.onFailure(exception);
            }
        });
    } catch (RequestException e) {
        e.printStackTrace();
    }
}

From source file:org.emfjson.gwt.handlers.HttpHandler.java

License:Open Source License

public static void create(final ResourceSet resourceSet, URI createService, final Callback<Resource> callback) {
    RequestBuilder builder = new RequestBuilder(RequestBuilder.POST, URL.encode(createService.toString()));
    builder.setHeader("Content-Type", "application/json");
    builder.setCallback(new RequestCallback() {
        @Override/*from w w  w. jav a 2  s .  co m*/
        public void onResponseReceived(Request request, Response response) {
            if (response.getStatusCode() == 201) {
                String location = response.getHeader("Location");
                Resource resource = resourceSet.createResource(URI.createURI(location));
                callback.onSuccess(resource);
            } else {
                callback.onFailure(new Exception("Resource has not been created"));
            }
        }

        @Override
        public void onError(Request request, Throwable exception) {
            callback.onFailure(exception);
        }
    });

    try {
        builder.send();
    } catch (RequestException e) {
        callback.onFailure(e);
    }
}