private boolean sendToUnderlyingInput()

in src/main/java/com/microsoft/azure/proton/transport/ws/impl/WebSocketImpl.java [251:296]


        private boolean sendToUnderlyingInput() {
            boolean readComplete = false;
            switch (lastType) {
                case WEB_SOCKET_MESSAGE_TYPE_UNKNOWN:
                case WEB_SOCKET_MESSAGE_TYPE_CHUNK:
                    wsInputBuffer.position(wsInputBuffer.limit());
                    wsInputBuffer.limit(wsInputBuffer.capacity());
                    break;
                case WEB_SOCKET_MESSAGE_TYPE_AMQP:
                    wsInputBuffer.flip();

                    int bytes2 = pourAll(wsInputBuffer, underlyingInput);
                    if (bytes2 == Transport.END_OF_STREAM) {
                        tailClosed = true;
                    }
                    //underlyingInput.process();

                    wsInputBuffer.compact();
                    wsInputBuffer.flip();
                    readComplete = true;
                    break;
                case WEB_SOCKET_MESSAGE_TYPE_CLOSE:
                    wsInputBuffer.flip();
                    pingBuffer.put(wsInputBuffer);
                    webSocketState = WebSocketState.PN_WS_CONNECTED_CLOSING;

                    wsInputBuffer.compact();
                    wsInputBuffer.flip();
                    readComplete = true;
                    break;
                case WEB_SOCKET_MESSAGE_TYPE_PING:
                    wsInputBuffer.flip();
                    pingBuffer.put(wsInputBuffer);
                    webSocketState = WebSocketState.PN_WS_CONNECTED_PONG;

                    wsInputBuffer.compact();
                    wsInputBuffer.flip();
                    readComplete = true;
                    break;
                default:
                    assert false : String.format("unexpected value for WebSocketFrameReadState: %s", lastType);
            }
            wsInputBuffer.position(wsInputBuffer.limit());
            wsInputBuffer.limit(wsInputBuffer.capacity());
            return readComplete;
        }