Package io.netty.buffer

Examples of io.netty.buffer.ByteBufOutputStream


                buf.writeBytes(packet.getData().toString().getBytes(CharsetUtil.UTF_8));
                break;
            }

            case OPEN: {
                ByteBufOutputStream out = new ByteBufOutputStream(buf);
                if (jsonp) {
                    jsonSupport.writeJsonValue(out, packet.getData());
                } else {
                    jsonSupport.writeValue(out, packet.getData());
                }
                break;
            }

            case MESSAGE: {
                byte subType = toChar(packet.getSubType().getValue());
                buf.writeByte(subType);

                if (packet.getSubType() == PacketType.CONNECT) {
                    if (!packet.getNsp().isEmpty()) {
                        buf.writeBytes(packet.getNsp().getBytes(CharsetUtil.UTF_8));
                    }
                } else {
                    if (!packet.getNsp().isEmpty()) {
                        buf.writeBytes(packet.getNsp().getBytes(CharsetUtil.UTF_8));
                        buf.writeBytes(new byte[] {','});
                    }
                }

                if (packet.getAckId() != null) {
                    byte[] ackId = toChars(packet.getAckId());
                    buf.writeBytes(ackId);
                }

                List<Object> values = new ArrayList<Object>();

                if (packet.getSubType() == PacketType.EVENT
                        || packet.getSubType() == PacketType.ERROR) {
                    values.add(packet.getName());
                }

                if (packet.getSubType() == PacketType.EVENT
                        || packet.getSubType() == PacketType.ACK
                            || packet.getSubType() == PacketType.ERROR) {
                    List<Object> args = packet.getData();
                    values.addAll(args);
                    ByteBufOutputStream out = new ByteBufOutputStream(buf);
                    if (jsonp) {
                        jsonSupport.writeJsonValue(out, values);
                    } else {
                        jsonSupport.writeValue(out, values);
                    }
View Full Code Here


                buf.writeBytes(packet.getData().toString().getBytes(CharsetUtil.UTF_8));
                break;
            }

            case OPEN: {
                ByteBufOutputStream out = new ByteBufOutputStream(buf);
                if (jsonp) {
                    jsonSupport.writeJsonpValue(out, packet.getData());
                } else {
                    jsonSupport.writeValue(out, packet.getData());
                }
                break;
            }

            case MESSAGE: {
                byte subType = toChar(packet.getSubType().getValue());
                buf.writeByte(subType);

                if (packet.getSubType() == PacketType.CONNECT) {
                    if (!packet.getNsp().isEmpty()) {
                        buf.writeBytes(packet.getNsp().getBytes(CharsetUtil.UTF_8));
                    }
                } else {
                    if (!packet.getNsp().isEmpty()) {
                        buf.writeBytes(packet.getNsp().getBytes(CharsetUtil.UTF_8));
                        buf.writeBytes(new byte[] {','});
                    }
                }

                if (packet.getAckId() != null) {
                    byte[] ackId = toChars(packet.getAckId());
                    buf.writeBytes(ackId);
                }

                List<Object> values = new ArrayList<Object>();

                if (packet.getSubType() == PacketType.EVENT
                        || packet.getSubType() == PacketType.ERROR) {
                    values.add(packet.getName());
                }

                if (packet.getSubType() == PacketType.EVENT
                        || packet.getSubType() == PacketType.ACK
                            || packet.getSubType() == PacketType.ERROR) {
                    List<Object> args = packet.getData();
                    values.addAll(args);
                    ByteBufOutputStream out = new ByteBufOutputStream(buf);
                    if (jsonp) {
                        jsonSupport.writeJsonpValue(out, values);
                    } else {
                        jsonSupport.writeValue(out, values);
                    }
View Full Code Here

      if (rawBodyLength > 0) {
        fullLength += (RAW_BODY_TAG_LENGTH + getRawVarintSize(rawBodyLength) + rawBodyLength);
      }

      ByteBuf buf = ctx.alloc().buffer();
      OutputStream os = new ByteBufOutputStream(buf);
      CodedOutputStream cos = CodedOutputStream.newInstance(os);

      // write full length first (this is length delimited stream).
      cos.writeRawVarint32(fullLength);
View Full Code Here

        private final ByteBuf outputBuffer;

        StreamOut(final MuxStream meta) {
            this.meta = meta;
            this.outputBuffer = PooledByteBufAllocator.DEFAULT.ioBuffer(0);
            this.output = new ByteBufOutputStream(outputBuffer);
        }
View Full Code Here

        getChars(i, size, buf);
        return buf;
    }

    public int encodePacket(Packet packet, ByteBuf buffer) throws IOException {
        ByteBufOutputStream out = new ByteBufOutputStream(buffer);
        int start = buffer.writerIndex();
        int type = packet.getType().getValue();
        buffer.writeByte(toChar(type));
        buffer.writeByte(Packet.SEPARATOR);
View Full Code Here

            if (tableSizeChangeOutput.isReadable()) {
                buffer.writeBytes(tableSizeChangeOutput);
                tableSizeChangeOutput.clear();
            }

            OutputStream stream = new ByteBufOutputStream(buffer);
            // Write pseudo headers first as required by the HTTP/2 spec.
            for (Http2Headers.PseudoHeaderName pseudoHeader : Http2Headers.PseudoHeaderName.values()) {
                String name = pseudoHeader.value();
                String value = headers.get(name);
                if (value != null) {
View Full Code Here

    @Override
    public void maxHeaderTableSize(int size) throws Http2Exception {
        try {
            // No headers should be emitted. If they are, we throw.
            encoder.setMaxHeaderTableSize(new ByteBufOutputStream(tableSizeChangeOutput), size);
        } catch (IOException e) {
            throw new Http2Exception(Http2Error.COMPRESSION_ERROR, e.getMessage(), e);
        }
    }
View Full Code Here

        getChars(i, size, buf);
        return buf;
    }

    public void encodePacket(Packet packet, ByteBuf buffer) throws IOException {
        ByteBufOutputStream out = new ByteBufOutputStream(buffer);
        int type = packet.getType().getValue();
        buffer.writeByte(toChar(type));
        buffer.writeByte(Packet.SEPARATOR);

        Long id = packet.getId();
View Full Code Here

      buf = ctx.alloc().buffer(bufferStartingSize);
    } else {
      requestSize +=  SIZE_OF_INT + SIZE_OF_BYTE;
      buf = ctx.alloc().buffer(requestSize);
    }
    ByteBufOutputStream output = new ByteBufOutputStream(buf);

    // This will later be filled with the correct size of serialized request
    output.writeInt(0);
    output.writeByte(request.getType().ordinal());
    try {
      request.write(output);
    } catch (IndexOutOfBoundsException e) {
      LOG.error("write: Most likely the size of request was not properly " +
          "specified (this buffer is too small) - see getSerializedSize() " +
          "in " + request.getType().getRequestClass());
      throw new IllegalStateException(e);
    }
    output.flush();
    output.close();

    // Set the correct size at the end
    buf.setInt(0, buf.writerIndex() - SIZE_OF_INT);
    if (LOG.isDebugEnabled()) {
      LOG.debug("write: Client " + request.getClientId() + ", " +
View Full Code Here

    }
    @SuppressWarnings("unchecked")
    WritableRequest writableRequest = (WritableRequest) msg;

    ByteBuf buf = ctx.alloc().buffer(10);
    ByteBufOutputStream output = new ByteBufOutputStream(buf);

    if (LOG.isDebugEnabled()) {
      LOG.debug("encode: Encoding a message of type " + msg.getClass());
    }

    // Space is reserved now to be filled later by the serialize request size
    output.writeInt(0);
    // write type of object.
    output.writeByte(writableRequest.getType().ordinal());
    // write the object itself.
    writableRequest.write(output);

    output.flush();
    output.close();

    // Set the correct size at the end.
    buf.setInt(0, buf.writerIndex() - SIZE_OF_INT);

    if (LOG.isDebugEnabled()) {
View Full Code Here

TOP

Related Classes of io.netty.buffer.ByteBufOutputStream

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.