Example usage for io.vertx.core.buffer Buffer toString

List of usage examples for io.vertx.core.buffer Buffer toString

Introduction

In this page you can find the example usage for io.vertx.core.buffer Buffer toString.

Prototype

@GenIgnore(GenIgnore.PERMITTED_TYPE)
String toString(Charset enc);

Source Link

Document

Returns a String representation of the Buffer with the encoding specified by enc

Usage

From source file:com.cyngn.vertx.opentsdb.service.client.OpenTsDbClient.java

License:Apache License

/**
 * Reading data when you haven't sent a command in OpenTsDb means there are errors coming back from an agent
 *
 * @param buffer/*from w ww .  j a  v  a  2s .c o m*/
 */
private void onDataReceived(Buffer buffer) {
    String openTsDbError = buffer.toString(StandardCharsets.UTF_8.toString());
    logger.error("Got data from agent: " + openTsDbError + " this is not expected");
    // let the user know if they failed to write because the data is invalid
    bus.send(OpenTsDbService.ERROR_MESSAGE_ADDRESS,
            new JsonObject().put("error", EventBusMessage.INVALID_DATA).put("message", openTsDbError));
    errorsReceived++;
}

From source file:fr.wseduc.smsproxy.providers.ovh.OVHSmsProvider.java

License:Apache License

private void retrieveSmsService(final Message<JsonObject> message, final Handler<String> callBack) {
    ovhRestClient.get("/sms/", new JsonObject(), new Handler<HttpClientResponse>() {
        public void handle(final HttpClientResponse response) {
            logger.debug("[OVH][retrieveSmsService] /sms/ call returned : " + response);
            if (response == null) {
                logger.error("[OVH][retrieveSmsService] /sms/ call response is null.");
                sendError(message, "ovh.apicall.error", null);
                return;
            }/*from  w w  w  .  j av a2 s  .c  o  m*/
            response.bodyHandler(new Handler<Buffer>() {
                public void handle(Buffer body) {
                    if (response.statusCode() == 200) {
                        logger.debug("[OVH][retrieveSmsService] Ok with body : " + body);
                        JsonArray smsServices = new JsonArray(body.toString("UTF-8"));
                        callBack.handle(smsServices.getString(0));
                    } else {
                        logger.error("[OVH][retrieveSmsService] /sms/ reponse code [" + response.statusCode()
                                + "] : " + body.toString("UTF-8"));
                        sendError(message, body.toString("UTF-8"), null);
                    }
                }
            });
        }
    });
}

From source file:io.advantageous.qbit.vertx.http.server.VertxServerUtils.java

License:Apache License

public WebSocket createWebSocket(final ServerWebSocket vertxServerWebSocket) {

    final MultiMap<String, String> params = paramMap(vertxServerWebSocket);

    final MultiMap<String, String> headers = vertxServerWebSocket.headers().size() == 0 ? MultiMap.empty()
            : new MultiMapWrapper(vertxServerWebSocket.headers());

    /* Create a websocket that uses vertxServerWebSocket to forwardEvent messages. */
    final WebSocket webSocket = webSocketBuilder().setUri(vertxServerWebSocket.uri())
            .setRemoteAddress(vertxServerWebSocket.remoteAddress().toString())
            .setWebSocketSender(new WebSocketSender() {
                @Override/*from  ww  w.ja  v  a 2  s .c o m*/
                public void sendText(String message) {
                    vertxServerWebSocket.writeFinalTextFrame(message);
                }

                @Override
                public void sendBytes(byte[] message) {
                    vertxServerWebSocket.writeFinalBinaryFrame(Buffer.buffer(message));
                }

                @Override
                public void close() {
                    vertxServerWebSocket.close();
                }
            }).setHeaders(headers).setParams(params).build();

    /* Handle open. */
    webSocket.onOpen();

    /* Handle close. */
    vertxServerWebSocket.closeHandler(event -> webSocket.onClose());

    final Buffer[] bufferRef = new Buffer[1];

    final int[] count = new int[1];

    /* Handle frame. */
    vertxServerWebSocket.frameHandler(event -> {

        count[0]++;

        if (event.isFinal()) {
            //If the count is 1 then all of the data is in bufferRef, else all of the data but the last bit is in bufferRef.
            final Buffer finalBuffer = count[0] > 1 ? createNewBuffer(bufferRef[0], event.binaryData())
                    : event.binaryData();
            if (event.isBinary()) {
                ((NetSocketBase) webSocket).setBinary();
                webSocket.onBinaryMessage(finalBuffer.getBytes());
            } else {
                webSocket.onTextMessage(finalBuffer.toString("UTF-8"));
            }

            count[0] = 0;
            bufferRef[0] = null;
        } else {
            bufferRef[0] = createNewBuffer(bufferRef[0], event.binaryData());
        }
    });

    /* Handle error. */
    vertxServerWebSocket.exceptionHandler(event -> {
        if (event instanceof Exception) {
            webSocket.onError((Exception) event);
        } else {
            webSocket.onError(new Exception(event));
        }
    });

    return webSocket;
}

From source file:io.github.jdocker.common.vertx.JacksonCodec.java

License:Apache License

@Override
public Object decodeFromWire(int pos, Buffer buffer) {
    ObjectReader reader = mapper.reader();
    try {/* w  ww . j a v a  2s.  c  o m*/
        return reader.readValue(buffer.toString(Charset.forName("UTF-8")));
    } catch (IOException e) {
        throw new IllegalStateException("Cannot decode json", e);
    }
}

From source file:io.sqp.proxy.vertx.WebsocketWriteStream.java

License:Open Source License

private void flushSlice(Buffer buffer, int from, int length, boolean isFinal) {
    // a slice is just a view on the same buffer: no need to copy something
    Buffer outBuf = buffer.slice(from, from + length);

    WebSocketFrame frame;//from w ww.  j av  a2s .c o m
    if (!_firstFrameWritten) {
        if (_format == DataFormat.Binary) {
            frame = WebSocketFrame.binaryFrame(outBuf, isFinal);
        } else {
            frame = WebSocketFrame.textFrame(outBuf.toString("UTF-8"), isFinal);
        }
    } else {
        frame = WebSocketFrame.continuationFrame(outBuf, isFinal);
    }
    _socket.writeFrame(frame);
    _firstFrameWritten = true;
}

From source file:org.eclipse.hono.authentication.impl.AbstractPlainAuthenticationService.java

License:Open Source License

private String[] readFields(final byte[] buffer) throws CredentialException {
    List<String> fields = new ArrayList<>();
    int pos = 0;//from   w w  w. ja  va2  s. c o  m
    Buffer b = Buffer.buffer();
    while (pos < buffer.length) {
        byte val = buffer[pos];
        if (val == 0x00) {
            fields.add(b.toString(StandardCharsets.UTF_8));
            b = Buffer.buffer();
        } else {
            b.appendByte(val);
        }
        pos++;
    }
    fields.add(b.toString(StandardCharsets.UTF_8));

    if (fields.size() != 3) {
        throw new CredentialException("client provided malformed PLAIN response");
    } else if (fields.get(1) == null || fields.get(1).length() == 0) {
        throw new CredentialException("PLAIN response must contain an authentication ID");
    } else if (fields.get(2) == null || fields.get(2).length() == 0) {
        throw new CredentialException("PLAIN response must contain a password");
    } else {
        return fields.toArray(new String[3]);
    }
}

From source file:org.eclipse.hono.config.PemReader.java

License:Open Source License

private static List<Entry> readAllFromBuffer(final Buffer buffer) throws IOException {

    // read data as string

    final String string = buffer.toString(StandardCharsets.US_ASCII);

    // parse PEM/* w ww .j  a va 2s.  c  om*/

    return readAll(new StringReader(string));
}

From source file:org.entcore.cas.http.WrappedRequest.java

License:Open Source License

@Override
public void getBody(final Handler<String> handler, final String encoding) {
    request.bodyHandler(new io.vertx.core.Handler<Buffer>() {
        @Override/*from  w w  w . ja  v a 2s  .  c o  m*/
        public void handle(Buffer event) {
            handler.handle(event != null ? event.toString(encoding != null ? encoding : "UTF-8") : null);
        }
    });
}

From source file:org.entcore.directory.controllers.UserBookController.java

License:Open Source License

@Put("/preference/:application")
@SecuredAction(value = "user.preference", type = ActionType.AUTHENTICATED)
public void updatePreference(final HttpServerRequest request) {
    UserUtils.getUserInfos(eb, request, new Handler<UserInfos>() {
        @Override/*from w w  w  .j  a  va 2s.  c  o  m*/
        public void handle(final UserInfos user) {
            if (user != null) {
                final JsonObject params = new JsonObject().put("userId", user.getUserId());
                final String application = request.params().get("application").replaceAll("\\W+", "");
                request.bodyHandler(new Handler<Buffer>() {
                    @Override
                    public void handle(Buffer body) {
                        params.put("conf", body.toString("UTF-8"));
                        String query = "MATCH (u:User {id:{userId}})"
                                + "MERGE (u)-[:PREFERS]->(uac:UserAppConf)" + " ON CREATE SET uac."
                                + application + " = {conf}" + " ON MATCH SET uac." + application + " = {conf}";
                        neo.execute(query, params,
                                validUniqueResultHandler(new Handler<Either<String, JsonObject>>() {
                                    @Override
                                    public void handle(Either<String, JsonObject> result) {
                                        if (result.isRight()) {
                                            renderJson(request, result.right().getValue());

                                            UserUtils.getSession(eb, request, new Handler<JsonObject>() {
                                                public void handle(JsonObject session) {
                                                    final JsonObject cache = session.getJsonObject("cache");

                                                    if (cache.containsKey("preferences")) {
                                                        JsonObject prefs = cache.getJsonObject("preferences");
                                                        prefs.put(application, params.getString("conf"));
                                                        if ("theme".equals(application)) {
                                                            prefs.remove(THEME_ATTRIBUTE + getHost(request));
                                                        }
                                                        UserUtils.addSessionAttribute(eb, user.getUserId(),
                                                                "preferences", prefs, new Handler<Boolean>() {
                                                                    public void handle(Boolean event) {
                                                                        UserUtils.removeSessionAttribute(eb,
                                                                                user.getUserId(),
                                                                                THEME_ATTRIBUTE
                                                                                        + getHost(request),
                                                                                null);
                                                                        if (!event)
                                                                            log.error(
                                                                                    "Could not add preferences attribute to session.");
                                                                    }
                                                                });
                                                    }
                                                }
                                            });
                                        } else {
                                            leftToResponse(request, result.left());
                                        }
                                    }
                                }));
                    }
                });
            } else {
                badRequest(request);
            }
        }
    });
}

From source file:org.entcore.infra.controllers.EmbedController.java

License:Open Source License

private boolean refreshDefault() {
    boolean exists = vertx.fileSystem().existsBlocking(defaultEmbedLocation);
    if (exists) {
        Buffer buff = vertx.fileSystem().readFileBlocking(defaultEmbedLocation);
        try {//from w ww.j  av a  2s.  co m
            this.defaultEmbedProviders = new fr.wseduc.webutils.collections.JsonArray(buff.toString("UTF-8"));
        } catch (Exception e) {
            log.error("Default embedded providers file contains invalid json.");
            log.error(e);
            this.defaultEmbedProviders = new fr.wseduc.webutils.collections.JsonArray();
            return false;
        }
        return true;
    } else {
        log.error("Default embedded providers json file not found.");
        this.defaultEmbedProviders = new fr.wseduc.webutils.collections.JsonArray();
        return false;
    }
}