Package org.apache.mina.common

Examples of org.apache.mina.common.DefaultWriteRequest


        StreamWriteFilter filter = new StreamWriteFilter();

        byte[] data = new byte[] { 1, 2, 3, 4 };

        InputStream stream = new ByteArrayInputStream(data);
        WriteRequest writeRequest = new DefaultWriteRequest(stream,
                new DummyWriteFuture());

        /*
         * Record expectations
         */
        nextFilter.filterWrite(session, new DefaultWriteRequest(IoBuffer
                .wrap(data)));
        mockNextFilter.setMatcher(new WriteRequestMatcher());
        nextFilter.messageSent(session, writeRequest);

        /*
         * Replay.
         */
        mockNextFilter.replay();

        filter.filterWrite(nextFilter, session, writeRequest);
        filter.messageSent(nextFilter, session, writeRequest);

        /*
         * Verify.
         */
        mockNextFilter.verify();

        assertTrue(writeRequest.getFuture().isWritten());
    }
View Full Code Here


        byte[] chunk1 = new byte[] { 1, 2, 3, 4 };
        byte[] chunk2 = new byte[] { 5, 6, 7, 8 };
        byte[] chunk3 = new byte[] { 9, 10 };

        InputStream stream = new ByteArrayInputStream(data);
        WriteRequest writeRequest = new DefaultWriteRequest(stream,
                new DummyWriteFuture());

        WriteRequest chunk1Request = new DefaultWriteRequest(IoBuffer
                .wrap(chunk1));
        WriteRequest chunk2Request = new DefaultWriteRequest(IoBuffer
                .wrap(chunk2));
        WriteRequest chunk3Request = new DefaultWriteRequest(IoBuffer
                .wrap(chunk3));

        /*
         * Record expectations
         */
 
View Full Code Here

        /*
         * Replay.  (We recorded *nothing* because nothing should occur.)
         */
        mockNextFilter.replay();

        WriteRequest wr = new DefaultWriteRequest(new Object(),
                new DummyWriteFuture());
        filter.filterWrite(nextFilter, session, wr);
        assertEquals(1, queue.size());
        assertSame(wr, queue.poll());

View Full Code Here

    public void testWritesWriteRequestQueueWhenFinished() throws Exception {
        StreamWriteFilter filter = new StreamWriteFilter();

        WriteRequest wrs[] = new WriteRequest[] {
                new DefaultWriteRequest(new Object(), new DummyWriteFuture()),
                new DefaultWriteRequest(new Object(), new DummyWriteFuture()),
                new DefaultWriteRequest(new Object(), new DummyWriteFuture()) };
        Queue<WriteRequest> queue = new LinkedList<WriteRequest>();
        queue.add(wrs[0]);
        queue.add(wrs[1]);
        queue.add(wrs[2]);
        InputStream stream = new ByteArrayInputStream(BUF);

        /*
         * Make up the situation.
         */
        session.setAttribute(StreamWriteFilter.CURRENT_STREAM, stream);
        session.setAttribute(StreamWriteFilter.CURRENT_WRITE_REQUEST,
                new DefaultWriteRequest(stream));
        session.setAttribute(StreamWriteFilter.WRITE_REQUEST_QUEUE, queue);

        /*
         * Record expectations
         */
        nextFilter.filterWrite(session, wrs[0]);
        nextFilter.filterWrite(session, wrs[1]);
        nextFilter.filterWrite(session, wrs[2]);
        nextFilter.messageSent(session, new DefaultWriteRequest(stream));
        mockNextFilter.setMatcher(new WriteRequestMatcher());

        /*
         * Replay.
         */
        mockNextFilter.replay();

        filter.messageSent(nextFilter, session, new DefaultWriteRequest(
                new Object()));
        assertEquals(0, queue.size());

        /*
         * Verify.
 
View Full Code Here

                Object pongMessage =
                    messageFactory.getResponse(session, message);
               
                if (pongMessage != null) {
                    nextFilter.filterWrite(
                            session, new DefaultWriteRequest(pongMessage));
                }
            }
           
            if (messageFactory.isResponse(session, message)) {
                resetStatus(session);
View Full Code Here

                if (!session.containsAttribute(WAITING_FOR_RESPONSE)) {
                    Object pingMessage = messageFactory.getRequest(session);
                    if (pingMessage != null) {
                        nextFilter.filterWrite(
                                session,
                                new DefaultWriteRequest(pingMessage));
                       
                        // If policy is OFF, there's no need to wait for
                        // the response.
                        if (getPolicy() != KeepAlivePolicy.OFF) {
                            markStatus(session);
View Full Code Here

        WriteFuture writeFuture = null;

        try {
            IoBuffer writeBuffer = fetchOutNetBuffer();
            writeFuture = new DefaultWriteFuture(session);
            parent.filterWrite(nextFilter, session, new DefaultWriteRequest(
                    writeBuffer, writeFuture));

            // loop while more writes required to complete handshake
            while (needToCompleteHandshake()) {
                try {
                    handshake(nextFilter);
                } catch (SSLException ssle) {
                    SSLException newSsle = new SSLHandshakeException(
                            "SSL handshake failed.");
                    newSsle.initCause(ssle);
                    throw newSsle;
                }
               
                IoBuffer outNetBuffer = fetchOutNetBuffer();
                if (outNetBuffer != null && outNetBuffer.hasRemaining()) {
                    writeFuture = new DefaultWriteFuture(session);
                    parent.filterWrite(nextFilter, session,
                            new DefaultWriteRequest(outNetBuffer, writeFuture));
                }
            }
        } finally {
            writingEncryptedData = false;
        }
View Full Code Here

                nextFilter.messageSent(session, writeRequest);
            } else {
                session.setAttribute(CURRENT_STREAM, inputStream);
                session.setAttribute(CURRENT_WRITE_REQUEST, writeRequest);

                nextFilter.filterWrite(session, new DefaultWriteRequest(
                        buffer));
            }

        } else {
            nextFilter.filterWrite(session, writeRequest);
View Full Code Here

                }

                currentWriteRequest.getFuture().setWritten();
                nextFilter.messageSent(session, currentWriteRequest);
            } else {
                nextFilter.filterWrite(session, new DefaultWriteRequest(
                        buffer));
            }
        }
    }
View Full Code Here

        WriteFuture writeFuture = null;

        try {
            IoBuffer writeBuffer = fetchOutNetBuffer();
            writeFuture = new DefaultWriteFuture(session);
            parent.filterWrite(nextFilter, session, new DefaultWriteRequest(
                    writeBuffer, writeFuture));

            // loop while more writes required to complete handshake
            while (needToCompleteHandshake()) {
                try {
                    handshake(nextFilter);
                } catch (SSLException ssle) {
                    SSLException newSsle = new SSLHandshakeException(
                            "SSL handshake failed.");
                    newSsle.initCause(ssle);
                    throw newSsle;
                }
               
                IoBuffer outNetBuffer = fetchOutNetBuffer();
                if (outNetBuffer != null && outNetBuffer.hasRemaining()) {
                    writeFuture = new DefaultWriteFuture(session);
                    parent.filterWrite(nextFilter, session,
                            new DefaultWriteRequest(outNetBuffer, writeFuture));
                }
            }
        } finally {
            writingEncryptedData = false;
        }
View Full Code Here

TOP

Related Classes of org.apache.mina.common.DefaultWriteRequest

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.