public ByteBuf encodeSettingsFrame()

in src/main/java/com/twitter/http2/HttpFrameEncoder.java [147:159]


    public ByteBuf encodeSettingsFrame(HttpSettingsFrame httpSettingsFrame) {
        Set<Integer> ids = httpSettingsFrame.getIds();
        int length = ids.size() * 6;
        byte flags = httpSettingsFrame.isAck() ? HTTP_FLAG_ACK : 0;
        int streamId = 0;
        ByteBuf frame = Unpooled.buffer(HTTP_FRAME_HEADER_SIZE + length);
        writeFrameHeader(frame, length, HTTP_SETTINGS_FRAME, flags, streamId);
        for (int id : ids) {
            frame.writeShort(id);
            frame.writeInt(httpSettingsFrame.getValue(id));
        }
        return frame;
    }