@Override
public void setReadListener(final ReadListener readListener) {
if (readListener == null) {
throw UndertowServletMessages.MESSAGES.listenerCannotBeNull();
}
if (listener != null) {
throw UndertowServletMessages.MESSAGES.listenerAlreadySet();
}
listener = readListener;
channel.getReadSetter().set(new ServletInputStreamChannelListener());
//we resume from an async task, after the request has been dispatched
ioExecutor.execute(new Runnable() {
@Override
public void run() {
channel.wakeupReads();
}
});
}
java类javax.servlet.ReadListener的实例源码
UpgradeServletInputStream.java 文件源码
项目:lams
阅读 33
收藏 0
点赞 0
评论 0
BodyReaderWrapper.java 文件源码
项目:spring-boot-start-current
阅读 29
收藏 0
点赞 0
评论 0
@Override
public ServletInputStream getInputStream () throws IOException {
if ( null == body ) {
return super.getInputStream();
}
final ByteArrayInputStream inputStream = new ByteArrayInputStream( body );
return new ServletInputStream() {
@Override
public boolean isFinished () {
return false;
}
@Override
public boolean isReady () {
return false;
}
@Override
public void setReadListener ( ReadListener readListener ) {
}
@Override
public int read () throws IOException {
return inputStream.read();
}
};
}
RequestWrapper.java 文件源码
项目:wisp
阅读 33
收藏 0
点赞 0
评论 0
@Override
public ServletInputStream getInputStream() throws IOException {
return new ServletInputStream() {
@Override
public boolean isFinished() {
return false;
}
@Override
public boolean isReady() {
return false;
}
@Override
public void setReadListener(ReadListener readListener) {
}
private TeeInputStream tee = new TeeInputStream(RequestWrapper.super.getInputStream(), bos);
@Override
public int read() throws IOException {
return tee.read();
}
};
}
ProxyExchange.java 文件源码
项目:spring-cloud-gateway
阅读 34
收藏 0
点赞 0
评论 0
public ServletInputStream getInputStream() {
ByteArrayInputStream body = new ByteArrayInputStream(
builder.toString().getBytes());
return new ServletInputStream() {
@Override
public int read() throws IOException {
return body.read();
}
@Override
public void setReadListener(ReadListener listener) {
}
@Override
public boolean isReady() {
return true;
}
@Override
public boolean isFinished() {
return body.available() <= 0;
}
};
}
RequestWrapper.java 文件源码
项目:summer
阅读 34
收藏 0
点赞 0
评论 0
@Override
public ServletInputStream getInputStream() throws IOException {
return new ServletInputStream() {
@Override
public boolean isFinished() {
return false;
}
@Override
public boolean isReady() {
return false;
}
@Override
public void setReadListener(ReadListener readListener) {
}
private TeeInputStream tee = new TeeInputStream(RequestWrapper.super.getInputStream(), bos, true);
@Override
public int read() throws IOException {
return tee.read();
}
};
}
AtmosphereServerHttpExchange.java 文件源码
项目:asity
阅读 44
收藏 0
点赞 0
评论 0
@Override
void start() {
input.setReadListener(new ReadListener() {
@Override
public void onDataAvailable() throws IOException {
read();
}
@Override
public void onAllDataRead() throws IOException {
end();
}
@Override
public void onError(Throwable t) {
errorActions.fire(t);
}
});
}
ServletServerHttpExchange.java 文件源码
项目:asity
阅读 29
收藏 0
点赞 0
评论 0
@Override
void start() {
input.setReadListener(new ReadListener() {
@Override
public void onDataAvailable() throws IOException {
read();
}
@Override
public void onAllDataRead() throws IOException {
end();
}
@Override
public void onError(Throwable t) {
errorActions.fire(t);
}
});
}
CustomHttpServletRequestWrapper.java 文件源码
项目:NFVO
阅读 34
收藏 0
点赞 0
评论 0
@Override
public ServletInputStream getInputStream() throws IOException {
final ByteArrayInputStream byteArrayInputStream = new ByteArrayInputStream(body.getBytes());
return new ServletInputStream() {
@Override
public boolean isFinished() {
return byteArrayInputStream.available() == 0;
}
@Override
public boolean isReady() {
return true;
}
@Override
public void setReadListener(ReadListener listener) {
throw new RuntimeException("Not implemented");
}
public int read() throws IOException {
return byteArrayInputStream.read();
}
};
}
CachingRequestWrapper.java 文件源码
项目:spring-hmac-rest
阅读 36
收藏 0
点赞 0
评论 0
@Override
public ServletInputStream getInputStream() throws IOException {
final ByteArrayInputStream byteArrayInputStream = new ByteArrayInputStream(getPayload());
return new ServletInputStream() {
@Override
public int read() throws IOException {
return byteArrayInputStream.read();
}
@Override
public boolean isFinished() {
return false;
}
@Override
public boolean isReady() {
return true;
}
@Override
public void setReadListener(ReadListener listener) {
//
}
};
}
TestPayloadNameRequestWrapper.java 文件源码
项目:javamelody
阅读 38
收藏 0
点赞 0
评论 0
ServletInputStream createServletOutputStream() {
final ByteArrayInputStream stream = new ByteArrayInputStream(body.getBytes());
// CHECKSTYLE:OFF
return new ServletInputStream() {
// CHECKSTYLE:ON
@Override
public int read() throws IOException {
return stream.read();
}
@Override
public boolean isFinished() {
return false;
}
@Override
public boolean isReady() {
return false;
}
@Override
public void setReadListener(ReadListener readListener) {
// nothing
}
};
}
ServletMocks.java 文件源码
项目:killbill-simple-tax-plugin
阅读 34
收藏 0
点赞 0
评论 0
public void withRequestBody(String requestBody) throws IOException {
final ByteArrayInputStream in = new ByteArrayInputStream(requestBody.getBytes());
when(req.getInputStream()).then(new Answer<ServletInputStream>() {
@Override
public ServletInputStream answer(InvocationOnMock invocation) throws Throwable {
return new ServletInputStream() {
@Override
public int read() throws IOException {
return in.read();
}
@Override
public void setReadListener(ReadListener readListener) {
try {
readListener.onDataAvailable();
readListener.onAllDataRead();
} catch (IOException letItCrash) {
throw new RuntimeException(letItCrash);
}
}
@Override
public boolean isReady() {
return true;
}
@Override
public boolean isFinished() {
return in.available() > 0;
}
};
}
});
}
AtmosphereServerHttpExchange.java 文件源码
项目:vibe-java-platform
阅读 37
收藏 0
点赞 0
评论 0
@Override
void start() {
input.setReadListener(new ReadListener() {
@Override
public void onDataAvailable() throws IOException {
read();
}
@Override
public void onAllDataRead() throws IOException {
end();
}
@Override
public void onError(Throwable t) {
errorActions.fire(t);
}
});
}
ServletServerHttpExchange.java 文件源码
项目:vibe-java-platform
阅读 30
收藏 0
点赞 0
评论 0
@Override
void start() {
input.setReadListener(new ReadListener() {
@Override
public void onDataAvailable() throws IOException {
read();
}
@Override
public void onAllDataRead() throws IOException {
end();
}
@Override
public void onError(Throwable t) {
errorActions.fire(t);
}
});
}
ServletInputStreamPublisherAdapterTest.java 文件源码
项目:reactive-jax-rs
阅读 36
收藏 0
点赞 0
评论 0
/**
* TBD
* @throws Exception
*/
@Test public void whenDataAvailableExpectReadBytesPublishedToSubscriber() throws Exception {
List<Byte> expectedValues = Arrays.asList((byte)2, (byte)47);
AnswerArg1<ReadListener> answer = new AnswerArg1<>();
BufferedSubscriber<byte[]> bufferedSubscriber = new BufferedSubscriber<>();
// mock setup
// receive setReadListener's argument
Mockito
.doAnswer(answer)
.when(servletInputStreamMock).setReadListener(Mockito.any(ReadListener.class));
// return one byte on ServletInputStream.read
when(servletInputStreamMock.read())
.thenReturn(2)
.thenReturn(47);
when(servletInputStreamMock.isReady())
.thenReturn(true)
.thenReturn(true)
.thenReturn(false);
servletInputStreamPublisherAdapter.startReading();
servletInputStreamPublisherAdapter.subscribe(bufferedSubscriber);
// inform about data availability
answer.getArg().onDataAvailable();
// asserts
List<byte[]> receivedByteList = bufferedSubscriber.toList();
Assert.assertThat(receivedByteList.size(), CoreMatchers.equalTo(2));
// Assert.assertThat(receivedByteList, CoreMatchers.hasItem((byte)2));
// Assert.assertThat(receivedByteList, CoreMatchers.hasItem((byte)47));
}
ServletInputStreamPublisherAdapterTest.java 文件源码
项目:reactive-jax-rs
阅读 38
收藏 0
点赞 0
评论 0
@Test public void whenNoMoreDataAvailableOnCompletedCalled() throws Exception {
AnswerArg1<ReadListener> answer = new AnswerArg1<>();
BufferedSubscriber<Object> bufferedSubscriber = new BufferedSubscriber<>();
// mock setup
// receive setReadListener's argument
Mockito
.doAnswer(answer)
.when(servletInputStreamMock).setReadListener(Mockito.any(ReadListener.class));
// return one byte on ServletInputStream.read
when(servletInputStreamMock.read())
.thenReturn(-1);
when(servletInputStreamMock.isReady())
.thenReturn(true);
servletInputStreamPublisherAdapter.startReading();
servletInputStreamPublisherAdapter.subscribe(bufferedSubscriber);
// inform about data availability
answer.getArg().onDataAvailable();
// asserts
Assert.assertThat(bufferedSubscriber.isCompleted(), CoreMatchers.equalTo(true));
}
ServletInputStreamPublisherAdapterTest.java 文件源码
项目:reactive-jax-rs
阅读 30
收藏 0
点赞 0
评论 0
@Test public void whenIoExceptionThrownOnReadExpectOnErrorCalled() throws Exception {
IOException expectedException = new IOException();
AnswerArg1<ReadListener> answer = new AnswerArg1<>();
BufferedSubscriber<Object> bufferedSubscriber = new BufferedSubscriber<>();
// mock setup
// receive setReadListener's argument
Mockito
.doAnswer(answer)
.when(servletInputStreamMock).setReadListener(Mockito.any(ReadListener.class));
// return one byte on ServletInputStream.read
when(servletInputStreamMock.read())
.thenThrow(expectedException);
when(servletInputStreamMock.isReady())
.thenReturn(true);
servletInputStreamPublisherAdapter.startReading();
servletInputStreamPublisherAdapter.subscribe(bufferedSubscriber);
// inform about data availability
answer.getArg().onDataAvailable();
// asserts
Assert.assertThat(bufferedSubscriber.getException(), CoreMatchers.equalTo(expectedException));
}
JsonRequestWrapper.java 文件源码
项目:wxcard
阅读 33
收藏 0
点赞 0
评论 0
@Override
public ServletInputStream getInputStream() throws IOException {
final ByteArrayInputStream byteArrayInputStream = new ByteArrayInputStream(body.getBytes());
ServletInputStream servletInputStream = new ServletInputStream() {
public int read() throws IOException {
return byteArrayInputStream.read();
}
@Override
public boolean isFinished() {
// TODO Auto-generated method stub
return false;
}
@Override
public boolean isReady() {
// TODO Auto-generated method stub
return false;
}
@Override
public void setReadListener(ReadListener readListener) {
// TODO Auto-generated method stub
}
};
return servletInputStream;
}
XssHttpServletRequestWrapper.java 文件源码
项目:renren-fast
阅读 34
收藏 0
点赞 0
评论 0
@Override
public ServletInputStream getInputStream() throws IOException {
//非json类型,直接返回
if(!super.getHeader(HttpHeaders.CONTENT_TYPE).equalsIgnoreCase(MediaType.APPLICATION_JSON_VALUE)){
return super.getInputStream();
}
//为空,直接返回
String json = IOUtils.toString(super.getInputStream(), "utf-8");
if (StringUtils.isBlank(json)) {
return super.getInputStream();
}
//xss过滤
json = xssEncode(json);
final ByteArrayInputStream bis = new ByteArrayInputStream(json.getBytes("utf-8"));
return new ServletInputStream() {
@Override
public boolean isFinished() {
return true;
}
@Override
public boolean isReady() {
return true;
}
@Override
public void setReadListener(ReadListener readListener) {
}
@Override
public int read() throws IOException {
return bis.read();
}
};
}
ServletInputStreamImpl.java 文件源码
项目:lams
阅读 32
收藏 0
点赞 0
评论 0
@Override
public void setReadListener(final ReadListener readListener) {
if (readListener == null) {
throw UndertowServletMessages.MESSAGES.listenerCannotBeNull();
}
if (listener != null) {
throw UndertowServletMessages.MESSAGES.listenerAlreadySet();
}
if (!request.isAsyncStarted()) {
throw UndertowServletMessages.MESSAGES.asyncNotStarted();
}
asyncContext = request.getAsyncContext();
listener = readListener;
channel.getReadSetter().set(internalListener = new ServletInputStreamChannelListener());
//we resume from an async task, after the request has been dispatched
asyncContext.addAsyncTask(new Runnable() {
@Override
public void run() {
channel.getIoThread().execute(new Runnable() {
@Override
public void run() {
channel.resumeReads();
internalListener.handleEvent(channel);
}
});
}
});
}
XssHttpServletRequestWrapper.java 文件源码
项目:my-spring-boot-project
阅读 37
收藏 0
点赞 0
评论 0
@Override
public ServletInputStream getInputStream() throws IOException {
//非json类型,直接返回
if (!super.getHeader(HttpHeaders.CONTENT_TYPE).equalsIgnoreCase(MediaType.APPLICATION_JSON_VALUE)) {
return super.getInputStream();
}
//为空,直接返回
String json = IOUtils.toString(super.getInputStream(), "utf-8");
if (StringUtils.isBlank(json)) {
return super.getInputStream();
}
//xss过滤
json = xssEncode(json);
final ByteArrayInputStream bis = new ByteArrayInputStream(json.getBytes("utf-8"));
return new ServletInputStream() {
@Override
public boolean isFinished() {
return false;
}
@Override
public boolean isReady() {
return false;
}
@Override
public void setReadListener(ReadListener readListener) {
}
@Override
public int read() throws IOException {
return bis.read();
}
};
}
AccessLogFilter.java 文件源码
项目:dremio-oss
阅读 34
收藏 0
点赞 0
评论 0
@Override
public ServletInputStream getInputStream() throws IOException {
final ServletInputStream inputStream = d.getInputStream();
return new ServletInputStream() {
@Override
public int read() throws IOException {
int b = inputStream.read();
if (b != -1) {
reqBody.write(b);
}
return b;
}
@Override
public void setReadListener(ReadListener readListener) {
inputStream.setReadListener(readListener);
}
@Override
public boolean isReady() {
return inputStream.isReady();
}
@Override
public boolean isFinished() {
return inputStream.isFinished();
}
};
}
XssHttpServletRequestWrapper.java 文件源码
项目:renren-msg
阅读 34
收藏 0
点赞 0
评论 0
@Override
public ServletInputStream getInputStream() throws IOException {
//非json类型,直接返回
if(!super.getHeader(HttpHeaders.CONTENT_TYPE).equalsIgnoreCase(MediaType.APPLICATION_JSON_VALUE)){
return super.getInputStream();
}
//为空,直接返回
String json = IOUtils.toString(super.getInputStream(), "utf-8");
if (StringUtils.isBlank(json)) {
return super.getInputStream();
}
//xss过滤
json = xssEncode(json);
final ByteArrayInputStream bis = new ByteArrayInputStream(json.getBytes("utf-8"));
return new ServletInputStream() {
@Override
public boolean isFinished() {
return true;
}
@Override
public boolean isReady() {
return true;
}
@Override
public void setReadListener(ReadListener readListener) {
}
@Override
public int read() throws IOException {
return bis.read();
}
};
}
BodyReaderHttpServletRequestWrapper.java 文件源码
项目:springboot-quick-build
阅读 33
收藏 0
点赞 0
评论 0
@Override
public ServletInputStream getInputStream() throws IOException {
final ByteArrayInputStream bais = new ByteArrayInputStream(body);
return new ServletInputStream() {
@Override
public int read() throws IOException {
return bais.read();
}
@Override
public boolean isFinished() {
return false;
}
@Override
public boolean isReady() {
return false;
}
@Override
public void setReadListener(ReadListener readListener) {
}
};
}
RequestLoggingFilter.java 文件源码
项目:herd
阅读 31
收藏 0
点赞 0
评论 0
@Override
public ServletInputStream getInputStream() throws IOException
{
if (payload == null)
{
// If no payload is present (i.e. debug logging isn't enabled), then perform the standard super class functionality.
return super.getInputStream();
}
else
{
return new ServletInputStream()
{
final ByteArrayInputStream byteArrayInputStream = new ByteArrayInputStream(payload);
public int read() throws IOException
{
// Read bytes from the previously read payload.
return byteArrayInputStream.read();
}
public boolean isFinished()
{
return true;
}
public boolean isReady()
{
return true;
}
public void setReadListener(final ReadListener readListener)
{
// Empty method.
}
};
}
}
ServletInputStreamWrapper.java 文件源码
项目:AvunaHTTPD-Java
阅读 28
收藏 0
点赞 0
评论 0
@Override
public void setReadListener(ReadListener arg0) {
try {
arg0.onDataAvailable();
}catch (IOException e) {
request.host.logger.logError(e);
}
listener = arg0;
}
MyRequestWrapper.java 文件源码
项目:hopsworks
阅读 55
收藏 0
点赞 0
评论 0
@Override
public ServletInputStream getInputStream() throws IOException {
final ByteArrayInputStream byteArrayInputStream = new ByteArrayInputStream(
body.getBytes());
ServletInputStream servletInputStream = new ServletInputStream() {
public int read() throws IOException {
return byteArrayInputStream.read();
}
@Override
public boolean isFinished() {
throw new UnsupportedOperationException("Not supported yet.");
}
@Override
public boolean isReady() {
throw new UnsupportedOperationException("Not supported yet.");
}
@Override
public void setReadListener(ReadListener readListener) {
throw new UnsupportedOperationException("Not supported yet.");
}
};
return servletInputStream;
}
PayloadNameRequestWrapper.java 文件源码
项目:javamelody
阅读 32
收藏 0
点赞 0
评论 0
/** {@inheritDoc} */
@Override
public ServletInputStream getInputStream() throws IOException {
final ServletInputStream requestInputStream = super.getInputStream();
if (bufferedInputStream == null) {
return requestInputStream;
}
if (inputStream == null) {
final BufferedInputStream myBufferedInputStream = bufferedInputStream;
//CHECKSTYLE:OFF
inputStream = new ServletInputStream() {
//CHECKSTYLE:ON
@Override
public int read() throws IOException {
return myBufferedInputStream.read();
}
@Override
public boolean isFinished() {
return requestInputStream.isFinished();
}
@Override
public boolean isReady() {
return requestInputStream.isReady();
}
@Override
public void setReadListener(ReadListener readListener) {
requestInputStream.setReadListener(readListener);
}
};
}
return inputStream;
}
TestMonitoringFilter.java 文件源码
项目:javamelody
阅读 34
收藏 0
点赞 0
评论 0
private ServletInputStream createInputStreamForString(final String string) {
final ByteArrayInputStream byteArrayInputStream = new ByteArrayInputStream(
string.getBytes());
// CHECKSTYLE:OFF
final ServletInputStream inputStream = new ServletInputStream() {
// CHECKSTYLE:ON
@Override
public int read() throws IOException {
return byteArrayInputStream.read();
}
@Override
public boolean isFinished() {
return false;
}
@Override
public boolean isReady() {
return false;
}
@Override
public void setReadListener(ReadListener readListener) {
// nothing
}
};
return inputStream;
}
PingServlet31AsyncRead.java 文件源码
项目:sample.daytrader7
阅读 32
收藏 0
点赞 0
评论 0
/**
* forwards post requests to the doGet method Creation date: (11/6/2000
* 10:52:39 AM)
*
* @param res
* javax.servlet.http.HttpServletRequest
* @param res2
* javax.servlet.http.HttpServletResponse
*/
@Override
public void doPost(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException {
res.setContentType("text/html");
AsyncContext ac = req.startAsync();
ServletInputStream input = req.getInputStream();
ReadListener readListener = new ReadListenerImpl(input, res, ac);
input.setReadListener(readListener);
}
PingServlet31Async.java 文件源码
项目:sample.daytrader7
阅读 32
收藏 0
点赞 0
评论 0
/**
* forwards post requests to the doGet method Creation date: (11/6/2000
* 10:52:39 AM)
*
* @param res
* javax.servlet.http.HttpServletRequest
* @param res2
* javax.servlet.http.HttpServletResponse
*/
@Override
public void doPost(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException {
res.setContentType("text/html");
AsyncContext ac = req.startAsync();
ServletInputStream input = req.getInputStream();
ReadListener readListener = new ReadListenerImpl(input, res, ac);
input.setReadListener(readListener);
}