Java 类javax.servlet.ReadListener 实例源码

项目:lams    文件:UpgradeServletInputStream.java   
@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();
        }
    });
}
项目:spring-boot-start-current    文件:BodyReaderWrapper.java   
@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();
        }
    };
}
项目:wisp    文件:RequestWrapper.java   
@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();
        }
    };
}
项目:spring-cloud-gateway    文件:ProxyExchange.java   
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;
        }
    };
}
项目:summer    文件:RequestWrapper.java   
@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();
        }
    };
}
项目:asity    文件:AtmosphereServerHttpExchange.java   
@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);
    }
  });
}
项目:asity    文件:ServletServerHttpExchange.java   
@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);
    }
  });
}
项目:NFVO    文件:CustomHttpServletRequestWrapper.java   
@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();
    }
  };
}
项目:spring-hmac-rest    文件:CachingRequestWrapper.java   
@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) {
            //
        }
    };
}
项目:javamelody    文件:TestPayloadNameRequestWrapper.java   
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
        }
    };
}
项目:killbill-simple-tax-plugin    文件:ServletMocks.java   
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;
                }
            };
        }
    });
}
项目:vibe-java-platform    文件:AtmosphereServerHttpExchange.java   
@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);
        }
    });
}
项目:vibe-java-platform    文件:ServletServerHttpExchange.java   
@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);
        }
    });
}
项目:reactive-jax-rs    文件:ServletInputStreamPublisherAdapterTest.java   
/**
   * 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));
  }
项目:reactive-jax-rs    文件:ServletInputStreamPublisherAdapterTest.java   
@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));
  }
项目:reactive-jax-rs    文件:ServletInputStreamPublisherAdapterTest.java   
@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));
}
项目:wxcard    文件:JsonRequestWrapper.java   
@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;
  }
项目:renren-fast    文件:XssHttpServletRequestWrapper.java   
@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();
        }
    };
}
项目:lams    文件:ServletInputStreamImpl.java   
@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);
                }
            });
        }
    });
}
项目:my-spring-boot-project    文件:XssHttpServletRequestWrapper.java   
@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();
        }
    };
}
项目:dremio-oss    文件:AccessLogFilter.java   
@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();
    }
  };
}
项目:renren-msg    文件:XssHttpServletRequestWrapper.java   
@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();
        }
    };
}
项目:springboot-quick-build    文件:BodyReaderHttpServletRequestWrapper.java   
@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) {

        }
    };
}
项目:herd    文件:RequestLoggingFilter.java   
@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.
            }

        };
    }
}
项目:AvunaHTTPD-Java    文件:ServletInputStreamWrapper.java   
@Override
public void setReadListener(ReadListener arg0) {
    try {
        arg0.onDataAvailable();
    }catch (IOException e) {
        request.host.logger.logError(e);
    }
    listener = arg0;
}
项目:hopsworks    文件:MyRequestWrapper.java   
@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;
}
项目:javamelody    文件:PayloadNameRequestWrapper.java   
/** {@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;
}
项目:javamelody    文件:TestMonitoringFilter.java   
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;
}
项目:sample.daytrader7    文件:PingServlet31AsyncRead.java   
/**
 * 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);
}
项目:sample.daytrader7    文件:PingServlet31Async.java   
/**
 * 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);
}
项目:appverse-server    文件:JWSHttpServletRequestWrapper.java   
@Override
public ServletInputStream getInputStream() throws IOException {
    final ByteArrayInputStream byteArrayInputStream = new ByteArrayInputStream(body.getBytes());

    ServletInputStream inputStream = new ServletInputStream() {
        @Override
        public int read() throws IOException {
            return byteArrayInputStream.read();
        }

        /* TODO: Review next methods. Not existing in original code. Required to be added
         * due to servlet API version change
         */
        @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 arg0) {
            // TODO Auto-generated method stub

        }
    };

    return inputStream;
}
项目:AvunaHTTPD-Java    文件:ServletInputStreamWrapper.java   
@Override
public void setReadListener(ReadListener arg0) {
    try {
        arg0.onDataAvailable();
    }catch (IOException e) {
        request.host.logger.logError(e);
    }
    listener = arg0;
}
项目:BikeMan    文件:RequestWrapper.java   
@Override
public ServletInputStream getInputStream() throws IOException {
    return new ServletInputStream() {
        private TeeInputStream tee = new TeeInputStream(RequestWrapper.super.getInputStream(), bos);

        @Override
        public int read() throws IOException {
            return tee.read();
        }

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

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

        @Override
        public void setReadListener(ReadListener listener) {
            // Auto-generated method stub
        }
    };
}
项目:http-exposer    文件:RequestWrapper.java   
@Override  
public ServletInputStream getInputStream () throws IOException {          
    final ByteArrayInputStream byteArrayInputStream = new ByteArrayInputStream(body);

    ServletInputStream inputStream = new ServletInputStream() {  
        public int read () throws IOException {  
            return byteArrayInputStream.read();  
        }

        @Override
        public boolean isFinished() {
            return byteArrayInputStream.available() > 0;
        }

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

        @Override
        public void setReadListener(ReadListener readListener) {
            // TODO Auto-generated method stub

        }  
    };

    return inputStream;  
}
项目:selenium-api    文件:ContentSnoopingRequest.java   
@Override
public ServletInputStream getInputStream() throws IOException {
    return new ServletInputStream() {

        int idx = 0;
        byte[] contents = content.getBytes(encoding);

        @Override
        public boolean isFinished() {
            return idx < contents.length;
        }

        @Override
        public boolean isReady() {
            return !isFinished();
        }

        @Override
        public int read() throws IOException {
            if (idx < contents.length) {
                return contents[idx++];
            } else return -1;
        }

        @Override
        public void setReadListener(ReadListener listener) {
            throw new java.lang.IllegalStateException();
        }
    };
}
项目:incubator-servicecomb-java-chassis    文件:BufferInputStream.java   
@Override
public void setReadListener(ReadListener readListener) {
}
项目:tasfe-framework    文件:HttpContentInputStream.java   
@Override
public void setReadListener(ReadListener readListener) {
    checkNotClosed();
    checkNotNull(readListener);
    this.readListener = readListener;
}
项目:tasfe-framework    文件:ServletInputStreamImpl.java   
@Override
public void setReadListener(ReadListener readListener) {
    // TODO Auto-generated method stub

}
项目:datarouter    文件:CachingServletInputStream.java   
@Override
public void setReadListener(ReadListener readListener){
    throw new UnsupportedOperationException();
}
项目:poppynotes    文件:SimpleServletInputStream.java   
@Override
public void setReadListener(ReadListener listener) {
    throw new RuntimeException("Not implemented");
}