Java 类javax.servlet.WriteListener 实例源码

项目:dremio-oss    文件:AccessLogFilter.java   
@Override
public ServletOutputStream getOutputStream() throws IOException {

  final ServletOutputStream outputStream = d.getOutputStream();
  return new ServletOutputStream() {

    @Override
    public void write(int b) throws IOException {
      respBody.write(b);
      outputStream.write(b);
    }

    @Override
    public void setWriteListener(WriteListener writeListener) {
      outputStream.setWriteListener(writeListener);
    }

    @Override
    public boolean isReady() {
      return outputStream.isReady();
    }
  };
}
项目:lams    文件:UpgradeServletOutputStream.java   
@Override
public void setWriteListener(final WriteListener writeListener) {
    if (writeListener == null) {
        throw UndertowServletMessages.MESSAGES.paramCannotBeNull("writeListener");
    }
    if (listener != null) {
        throw UndertowServletMessages.MESSAGES.listenerAlreadySet();
    }
    listener = writeListener;
    channel.getWriteSetter().set(new WriteChannelListener());
    state |= FLAG_READY;
    ioExecutor.execute(new Runnable() {
        @Override
        public void run() {
            channel.resumeWrites();
        }
    });
}
项目:wisp    文件:ResponseWrapper.java   
@Override
public ServletOutputStream getOutputStream() throws IOException {
    return new ServletOutputStream() {
        @Override
        public boolean isReady() {
            return false;
        }

        @Override
        public void setWriteListener(WriteListener writeListener) {

        }

        private TeeOutputStream tee = new TeeOutputStream(ResponseWrapper.super.getOutputStream(), bos);

        @Override
        public void write(int b) throws IOException {
            tee.write(b);
        }
    };
}
项目:Rapture    文件:BlobContentServletTest.java   
@Override
public ServletOutputStream getOutputStream() throws IOException {
    return new ServletOutputStream() {
        @Override
        public void write(int b) throws IOException {
            baos.write(b);
        }

        @Override
        public boolean isReady() {
            // TODO Auto-generated method stub
            return false;
        }

        @Override
        public void setWriteListener(WriteListener listener) {
            // TODO Auto-generated method stub

        }
    };
}
项目:spring-cloud-gateway    文件:ProxyExchange.java   
@Override
public ServletOutputStream getOutputStream() throws IOException {
    return new ServletOutputStream() {

        @Override
        public void write(int b) throws IOException {
            builder.append(new Character((char) b));
        }

        @Override
        public void setWriteListener(WriteListener listener) {
        }

        @Override
        public boolean isReady() {
            return true;
        }
    };
}
项目:summer    文件:ResponseWrapper.java   
@Override
public ServletOutputStream getOutputStream() throws IOException {
    return new ServletOutputStream() {
        @Override
        public boolean isReady() {
            return false;
        }

        @Override
        public void setWriteListener(WriteListener writeListener) {

        }

        private TeeOutputStream tee = new TeeOutputStream(ResponseWrapper.super.getOutputStream(), bos);

        @Override
        public void write(int b) throws IOException {
            tee.write(b);
        }
    };
}
项目:fauxjsp    文件:ServletResponseWrapper.java   
@Override
public ServletOutputStream getOutputStream() throws IOException {
    if (servletOutputStream == null){
        servletOutputStream = new ServletOutputStream() {

            @Override
            public void write(int b) throws IOException {
                out.write(b);
            }

            @Override
            public void setWriteListener(WriteListener wl) {
                writeListener = wl;
            }

            @Override
            public boolean isReady() {
                return true;
            }
        };
    }
    return servletOutputStream;
}
项目:fauxjsp    文件:MockHttpServletResponse.java   
@Override
public ServletOutputStream getOutputStream() throws IOException {
    if (out == null){
        out = new ServletOutputStream() {

            @Override
            public void write(int b) throws IOException {
                baos.write(b);
            }

            @Override
            public void setWriteListener(WriteListener writeListener) {
            }

            @Override
            public boolean isReady() {
                return false;
            }
        };
    }
    return out;
}
项目:app-engine    文件:ResponseWrapper.java   
@Override
public ServletOutputStream getOutputStream() throws IOException {
    return new ServletOutputStream() {
        private TeeOutputStream tee = new TeeOutputStream(ResponseWrapper.super.getOutputStream(), bos);

        @Override
        public boolean isReady() {
            return true;
        }

        @Override
        public void setWriteListener(WriteListener writeListener) {
        }

        @Override
        public void write(int b) throws IOException {
            tee.write(b);
        }
    };
}
项目:gerrit    文件:FakeHttpServletResponse.java   
@Override
public synchronized ServletOutputStream getOutputStream() {
  checkState(writer == null, "getWriter() already called");
  if (outputStream == null) {
    outputStream =
        new ServletOutputStream() {
          @Override
          public void write(int c) throws IOException {
            actualBody.write(c);
          }

          @Override
          public boolean isReady() {
            return true;
          }

          @Override
          public void setWriteListener(WriteListener listener) {
            throw new UnsupportedOperationException();
          }
        };
  }
  return outputStream;
}
项目:plugins_github    文件:AuthenticatedLoginHttpResponse.java   
@Override
public ServletOutputStream getOutputStream() throws IOException {
  return new ServletOutputStream() {

    @Override
    public void write(int b) throws IOException {
      outputStream.write(b);
    }

    @Override
    public void setWriteListener(WriteListener arg0) {}

    @Override
    public boolean isReady() {
      return true;
    }
  };
}
项目:mhus-osgi-tools    文件:DispatchedHttpServletResponse.java   
public ServletOutputStream getOutputStream() throws IOException {
//      return instace.getOutputStream();
        if (os == null) {
            os = new ByteArrayOutputStream();
            sos = new ServletOutputStream() {

                @Override
                public void write(int b) throws IOException {
                    os.write(b);
                }

                @Override
                public boolean isReady() {
                    return true;
                }

                @Override
                public void setWriteListener(WriteListener writeListener) {
                }
            };
        }
        return sos;
    }
项目:SciGraph    文件:ByteArrayResponseWrapper.java   
@Override
public ServletOutputStream getOutputStream() {
  return new ServletOutputStream() {
    @Override
    public void write(int b) {
      baos.write(b);
    }

    @Override
    public boolean isReady() {
      return true;
    }

    @Override
    public void setWriteListener(WriteListener writeListener) {}
  };
}
项目:BikeMan    文件:ResponseWrapper.java   
@Override
public ServletOutputStream getOutputStream() throws IOException {
    return new ServletOutputStream() {
        private TeeOutputStream tee = new TeeOutputStream(ResponseWrapper.super.getOutputStream(), bos);

        @Override
        public void write(int b) throws IOException {
            tee.write(b);
        }

        @Override
        public boolean isReady() {
            // Auto-generated method stub
            return false;
        }

        @Override
        public void setWriteListener(WriteListener listener) {
            // Auto-generated method stub
        }
    };
}
项目:sql-analytic    文件:MockHtppServletResponse.java   
@Override
public ServletOutputStream getOutputStream() throws IOException {

    return new ServletOutputStream(){

        @Override
        public boolean isReady() {              
            return true;
        }

        @Override
        public void setWriteListener(WriteListener writeListener) {


        }

        @Override
        public void write(int b) throws IOException {
            out.write(b);               
        }

    };
}
项目:vraptor4    文件:InputStreamDownloadTest.java   
@Before
public void setUp() throws Exception {
    MockitoAnnotations.initMocks(this);

    bytes = new byte[] { (byte) 0x0 };
    inputStream = new ByteArrayInputStream(bytes);
    outputStream = new ByteArrayOutputStream();

    socketStream = new ServletOutputStream() {
        @Override
        public void write(int b) throws IOException {
            outputStream.write(b);
        }

        @Override
        public boolean isReady() {
            return false;
        }

        @Override
        public void setWriteListener(WriteListener writeListener) {
        }
    };

    when(response.getOutputStream()).thenReturn(socketStream);
}
项目:vraptor4    文件:ByteArrayDownloadTest.java   
@Before
public void setUp() throws Exception {
    MockitoAnnotations.initMocks(this);

    bytes = new byte[] { (byte) 0x0 };
    outputStream = new ByteArrayOutputStream();

    socketStream = new ServletOutputStream() {
        @Override
        public void write(int b) throws IOException {
            outputStream.write(b);
        }

        @Override
        public boolean isReady() {
            return false;
        }

        @Override
        public void setWriteListener(WriteListener writeListener) {
        }
    };

    when(response.getOutputStream()).thenReturn(socketStream);
}
项目:incubator-servicecomb-java-chassis    文件:TestStandardHttpServletResponseEx.java   
@Test
public void flushBuffer() throws IOException {
  Buffer buffer = Buffer.buffer();
  ServletOutputStream output = new ServletOutputStream() {
    @Override
    public boolean isReady() {
      return true;
    }

    @Override
    public void setWriteListener(WriteListener writeListener) {

    }

    @Override
    public void write(int b) throws IOException {
      buffer.appendByte((byte) b);
    }

  };
  response = new MockUp<HttpServletResponse>() {
    @Mock
    ServletOutputStream getOutputStream() {
      return output;
    }
  }.getMockInstance();
  responseEx = new StandardHttpServletResponseEx(response);

  // no body
  responseEx.flushBuffer();
  Assert.assertEquals(0, buffer.length());

  Buffer body = Buffer.buffer().appendString("body");
  responseEx.setBodyBuffer(body);
  responseEx.flushBuffer();
  Assert.assertEquals("body", buffer.toString());
}
项目:lams    文件:ServletOutputStreamImpl.java   
@Override
public void setWriteListener(final WriteListener writeListener) {
    if (writeListener == null) {
        throw UndertowServletMessages.MESSAGES.listenerCannotBeNull();
    }
    if (listener != null) {
        throw UndertowServletMessages.MESSAGES.listenerAlreadySet();
    }
    final ServletRequest servletRequest = servletRequestContext.getServletRequest();
    if (!servletRequest.isAsyncStarted()) {
        throw UndertowServletMessages.MESSAGES.asyncNotStarted();
    }
    asyncContext = (AsyncContextImpl) servletRequest.getAsyncContext();
    listener = writeListener;
    //we register the write listener on the underlying connection
    //so we don't have to force the creation of the response channel
    //under normal circumstances this will break write listener delegation
    this.internalListener = new WriteChannelListener();
    if(this.channel != null) {
        this.channel.getWriteSetter().set(internalListener);
    }
    //we resume from an async task, after the request has been dispatched
    asyncContext.addAsyncTask(new Runnable() {
        @Override
        public void run() {
            if(channel == null) {
                servletRequestContext.getExchange().getIoThread().execute(new Runnable() {
                    @Override
                    public void run() {
                        internalListener.handleEvent(null);
                    }
                });
            } else {
                channel.resumeWrites();
            }
        }
    });
}
项目:light    文件:HelloJettyServletTest.java   
@Test
public void testDoGet() throws ServletException, IOException
{
    final HttpServletRequest request = mock(HttpServletRequest.class);
    final HttpServletResponse response = mock(HttpServletResponse.class);

    when(response.getStatus()).thenReturn(200);

    when(response.getOutputStream()).thenReturn(new ServletOutputStream()
    {
        @Override
        public void write(final byte b[]) throws IOException
        {
            assertThat(new String(b), is("hello"));
        }

        @Override
        public void write(final int i) throws IOException
        {}

        @Override
        public boolean isReady()
        {
            return false;
        }

        @Override
        public void setWriteListener(final WriteListener writeListener)
        {}
    });

    HelloJettyServlet servlet = new HelloJettyServlet();
    servlet.doGet(request, response);

    assertThat(response.getStatus(), is(200));
}
项目:light    文件:HelloServletTest.java   
@Test
public void testDoGet() throws ServletException, IOException
{
    final HttpServletRequest request = mock(HttpServletRequest.class);
    final HttpServletResponse response = mock(HttpServletResponse.class);

    when(response.getStatus()).thenReturn(200);

    when(response.getOutputStream()).thenReturn(new ServletOutputStream()
    {
        @Override
        public void write(final byte b[]) throws IOException
        {
            assertThat(new String(b), is("hello"));
        }

        @Override
        public void write(final int i) throws IOException
        {}

        @Override
        public boolean isReady()
        {
            return false;
        }

        @Override
        public void setWriteListener(final WriteListener writeListener)
        {}
    });

    HelloServlet servlet = new HelloServlet();
    servlet.doGet(request, response);

    assertThat(response.getStatus(), is(200));
}
项目:HttpSessionReplacer    文件:TestHttpResponseWrapper.java   
@Before
public void setupWrapper() throws IOException {
  requestWrapper = mock(HttpRequestWrapper.class);
  response = mock(HttpServletResponse.class);
  manager = mock(SessionManager.class);
  configuration = new SessionConfiguration();
  when(manager.getConfiguration()).thenReturn(configuration);
  when(requestWrapper.getManager()).thenReturn(manager );
  responseWrapper = new HttpResponseWrapper31(requestWrapper, response);
  outputStream = new ByteArrayOutputStream();
  outputWriter = new StringWriter();
  when(response.getOutputStream()).thenReturn(new ServletOutputStream() {
    @Override
    public void write(int b) throws IOException {
      outputStream.write(b);
    }

    @Override
    public void setWriteListener(WriteListener writeListener) {
    }

    @Override
    public boolean isReady() {
      return false;
    }
  });
  when(response.getWriter()).thenReturn(new PrintWriter(outputWriter));
}
项目:rainbow-rest    文件:HtmlResponseWrapper.java   
@Override
public ServletOutputStream getOutputStream() {
    if (writer != null) {
        throw new IllegalStateException(
                "getWriter() has already been called on this response.");
    }

    if (output == null) {
        output = new ServletOutputStream() {
            @Override
            public void write(int b) throws IOException {
                capture.write(b);
            }

            @Override
            public void flush() throws IOException {
                capture.flush();
            }

            @Override
            public void close() throws IOException {
                capture.close();
            }

            @Override
            public boolean isReady() {
                return false;
            }

            @Override
            public void setWriteListener(WriteListener arg0) {
            }
        };
    }

    return output;
}
项目:anyline    文件:WebUtil.java   
/**
 * 解析jsp成html 只能解析当前应用下的jsp文件
 * @param request
 * @param response
 * @param file "/WEB-INF/page/index.jsp"
 * @return
 * @throws ServletException
 * @throws IOException
 */
public static String parseJsp(HttpServletRequest request, HttpServletResponse response, String file) throws ServletException, IOException {
    ServletContext servlet = request.getServletContext();
    RequestDispatcher dispatcher = servlet.getRequestDispatcher(file);
    final ByteArrayOutputStream os = new ByteArrayOutputStream();
    final ServletOutputStream stream = new ServletOutputStream() {
        public void write(byte[] data, int offset, int length) {
            os.write(data, offset, length);
        }
        public void write(int b) throws IOException {
            os.write(b);
        }
        @Override
        public boolean isReady() {
            return false;
        }

        @Override                    
        public void setWriteListener(WriteListener arg0) {}
    };
    final PrintWriter writer = new PrintWriter(new OutputStreamWriter(os));
    HttpServletResponse resp = new HttpServletResponseWrapper(response) {
        public ServletOutputStream getOutputStream() {
            return stream;
        }
        public PrintWriter getWriter() {
            return writer;
        }
    };
    dispatcher.include(request, resp);
    writer.flush();
    String result = os.toString();
    if(ConfigTable.isDebug() && !"false".equals(ConfigTable.getString("PARSE_JSP_LOG"))){
        log.warn("[LOAD JSP TEMPLATE][FILE:"+file+"][HTML:"+result+"]");
    }
    return result;
}
项目:SilentGo    文件:GZIPResponseStream.java   
@Override
public void setWriteListener(WriteListener writeListener) {
    try {
        writeListener.onWritePossible();
    } catch (IOException e) {
        e.printStackTrace();
    }
}
项目:AvunaHTTPD-Java    文件:ServletOutputStreamWrapper.java   
@Override
public void setWriteListener(WriteListener arg0) {
    try {
        this.wl = arg0;
        lock = true;
        arg0.onWritePossible();
        lock = false;
    }catch (IOException e) {
        response.request.host.logger.logError(e);
    }
}
项目:che_orion_api    文件:LocationHeaderFilter.java   
@Override
public void setWriteListener(WriteListener arg0) {
    try {
        arg0.onWritePossible();
    } catch (IOException e) {
    }
}
项目:fengduo    文件:Widget.java   
public ServletOutputStream getOutputStream() {
    if (isWriterUsed) {
        throw new IllegalStateException("Unexpected internal error during import: "
                                        + "Target servlet called getOutputStream(), then getWriter()");
    }
    isStreamUsed = true;
    if (bos == null) {
        bos = new ByteArrayOutputStream();
    }
    ServletOutputStream sos = new ServletOutputStream() {

        public void write(int b) throws IOException {
            bos.write(b);
        }

        @Override
        public boolean isReady() {
            return false;
        }

        @Override
        public void setWriteListener(WriteListener writeListener) {

        }
    };
    return sos;
}
项目:fengduo    文件:WebResponseWrapper.java   
public ServletOutputStream getOutputStream() {
    if (isWriterUsed) {
        logger.error("Unexpected internal error during import: Target servlet called getOutputStream(), then getWriter()");
        throw new IllegalStateException(
                                        "Unexpected internal error during import: Target servlet called getOutputStream(), then getWriter()");
    }
    isStreamUsed = true;
    if (bos == null) {
        bos = new ByteArrayOutputStream();
    }
    ServletOutputStream sos = new ServletOutputStream() {

        public void write(int b) throws IOException {
            bos.write(b);
        }

        @Override
        public boolean isReady() {
            return false;
        }

        @Override
        public void setWriteListener(WriteListener writeListener) {

        }
    };
    return sos;
}
项目:evosuite    文件:EvoHttpServletResponse.java   
@Override
public ServletOutputStream getOutputStream() throws IOException,IllegalStateException {
    if(writer != null){
        throw new IllegalStateException("Get stream failed because get writer has already been called");
    }

    if(stream == null) {
        stream = new ServletOutputStream() {
            @Override
            public boolean isReady() {
                return true;
            }

            @Override
            public void setWriteListener(WriteListener writeListener) {
                //TODO
            }

            @Override
            public void write(int b) throws IOException {
                buffer.add((byte) b);
            }

            @Override
            public void flush() throws IOException {
                committed = true;
                super.flush();
            }

            @Override
            public void close() throws IOException {
                committed = true;
                super.close();
            }
        };
    }
    return stream;
}
项目:AvunaHTTPD-Java    文件:ServletOutputStreamWrapper.java   
@Override
public void setWriteListener(WriteListener arg0) {
    try {
        this.wl = arg0;
        lock = true;
        arg0.onWritePossible();
        lock = false;
    }catch (IOException e) {
        response.request.host.logger.logError(e);
    }
}
项目:ev-oss    文件:Dialog.java   
public void write(WriteListener proxyWriter) throws IOException {
    if (responseContentLength >= 0)
        proxyResponse.setContentLength(-1);

    // Setting the WriteListener triggers an invocation to
    // onWritePossible(), possibly on a different thread.
    // We cannot succeed the callback from here, otherwise
    // we run into a race where the different thread calls
    // onWritePossible() and succeeding the callback causes
    // this method to be called again, which also may call
    // onWritePossible().
    proxyResponse.getOutputStream().setWriteListener(proxyWriter);      
}
项目:portals-pluto    文件:HttpServletPortletResponseWrapper.java   
@Override
public ServletOutputStream getOutputStream() throws IOException {
   if (servletOutputStream == null) {
      outputStream = (portletResponse instanceof MimeResponse) ? ((MimeResponse) portletResponse)
            .getPortletOutputStream() : DummyServletOutputStream.getInstance();
      if (outputStream instanceof ServletOutputStream) {
         servletOutputStream = (ServletOutputStream) outputStream;
      } else {
         servletOutputStream = new ServletOutputStream() {
            @Override
            public void write(int b) throws IOException {
               outputStream.write(b);
            }

            @Override
            public boolean isReady() {
               // Servlet 3.1 API. Not implemented.
               return true;
            }

            @Override
            public void setWriteListener(WriteListener arg0) {
               // Servlet 3.1 API. Not implemented.
            }
         };
      }
   }
   return servletOutputStream;
}
项目:vraptor4    文件:FileDownloadTest.java   
@Before
public void setUp() throws Exception {
    MockitoAnnotations.initMocks(this);

    bytes = new byte[] { (byte) 0x0 };
    outputStream = new ByteArrayOutputStream();

    file = folder.newFile();
    Files.write(file.toPath(), bytes);

    socketStream = new ServletOutputStream() {
        @Override
        public void write(int b) throws IOException {
            outputStream.write(b);
        }

        @Override
        public boolean isReady() {
            return false;
        }

        @Override
        public void setWriteListener(WriteListener writeListener) {
        }
    };

    when(response.getOutputStream()).thenReturn(socketStream);
}
项目:session-share    文件:SessionShareResponseWrapper.java   
@Override
public void setWriteListener(WriteListener writeListener) {
    delegate.setWriteListener(writeListener);
}
项目:reactive-jax-rs    文件:StreamServletFilter.java   
@Override
public void setWriteListener(WriteListener writeListener) {
  wrappedStream.setWriteListener(writeListener);
}
项目:open-kilda    文件:ServletOutputStreamWrapper.java   
@Override
public void setWriteListener(WriteListener arg0) {
    // TODO Auto-generated method stub

}
项目:tasfe-framework    文件:HttpResponseOutputStream.java   
@Override
public void setWriteListener(WriteListener writeListener) {
    checkNotNull(writeListener);
    // TODO ISE when called more than once
    // TODO ISE when associated request is not async
}
项目:tasfe-framework    文件:ServletOutputStreamImpl.java   
@Override
public void setWriteListener(WriteListener writeListener) {
    // TODO Auto-generated method stub

}
项目:Equella    文件:JsonpFilter.java   
@Override
public void setWriteListener(WriteListener writeListener)
{
    // nothing
}