本文整理了Java中javax.ws.rs.container.ContainerResponseContext.setEntityStream()
方法的一些代码示例,展示了ContainerResponseContext.setEntityStream()
的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。ContainerResponseContext.setEntityStream()
方法的具体详情如下:
包路径:javax.ws.rs.container.ContainerResponseContext
类名称:ContainerResponseContext
方法名:setEntityStream
[英]Set a new entity output stream. The JAX-RS runtime is responsible for closing the output stream.
[中]设置一个新的实体输出流。JAX-RS运行时负责关闭输出流。
代码示例来源:origin: docker-java/docker-java
@Override
public void filter(final ContainerRequestContext requestContext, final ContainerResponseContext responseContext)
throws IOException {
final long id = aid.incrementAndGet();
final StringBuilder b = new StringBuilder();
printResponseLine(b, "Server responded with a response", id, responseContext.getStatus());
printPrefixedHeaders(b, id, RESPONSE_PREFIX, responseContext.getStringHeaders());
if (printEntity && responseContext.hasEntity()) {
final OutputStream stream = new LoggingStream(b, responseContext.getEntityStream());
responseContext.setEntityStream(stream);
requestContext.setProperty(ENTITY_LOGGER_PROPERTY, stream);
// not calling log(b) here - it will be called by the interceptor
} else {
log(b);
}
}
代码示例来源:origin: jersey/jersey
@Override
public void filter(final ContainerRequestContext requestContext, final ContainerResponseContext responseContext)
throws IOException {
if (!logger.isLoggable(level)) {
return;
}
final Object requestId = requestContext.getProperty(LOGGING_ID_PROPERTY);
final long id = requestId != null ? (Long) requestId : _id.incrementAndGet();
final StringBuilder b = new StringBuilder();
printResponseLine(b, "Server responded with a response", id, responseContext.getStatus());
printPrefixedHeaders(b, id, RESPONSE_PREFIX, responseContext.getStringHeaders());
if (responseContext.hasEntity() && printEntity(verbosity, responseContext.getMediaType())) {
final OutputStream stream = new LoggingStream(b, responseContext.getEntityStream());
responseContext.setEntityStream(stream);
requestContext.setProperty(ENTITY_LOGGER_PROPERTY, stream);
// not calling log(b) here - it will be called by the interceptor
} else {
log(b);
}
}
}
代码示例来源:origin: jersey/jersey
@Override
public void filter(final ContainerRequestContext requestContext, final ContainerResponseContext responseContext)
throws IOException {
if (!logger.isLoggable(level)) {
return;
}
final Object requestId = requestContext.getProperty(LOGGING_ID_PROPERTY);
final long id = requestId != null ? (Long) requestId : _id.incrementAndGet();
final StringBuilder b = new StringBuilder();
printResponseLine(b, "Server responded with a response", id, responseContext.getStatus());
printPrefixedHeaders(b, id, RESPONSE_PREFIX, responseContext.getStringHeaders());
if (responseContext.hasEntity() && printEntity(verbosity, responseContext.getMediaType())) {
final OutputStream stream = new LoggingStream(b, responseContext.getEntityStream());
responseContext.setEntityStream(stream);
requestContext.setProperty(ENTITY_LOGGER_PROPERTY, stream);
// not calling log(b) here - it will be called by the interceptor
} else {
log(b);
}
}
}
代码示例来源:origin: oracle/helidon
responseContext.setEntityStream(outputStreamPublisher);
代码示例来源:origin: zalando/logbook
public LocalResponse(final ContainerResponseContext context) {
this.stream = new TeeOutputStream(context.getEntityStream());
context.setEntityStream(stream);
this.context = context;
}
代码示例来源:origin: com.effektif/effektif-server
@Override
public void filter(final ContainerRequestContext requestContext, final ContainerResponseContext responseContext) throws IOException {
final long id = this._id.incrementAndGet();
final StringBuilder logMsg = new StringBuilder();
logMsg
.append("\n<<< ")
.append(responseContext.getStatus())
.append("\n");
if (logHeaders) {
logHeaders(logMsg, id, RESPONSE_PREFIX, responseContext.getStringHeaders());
}
if (logEntity && responseContext.hasEntity()) {
final OutputStream stream = new LoggingStream(logMsg, responseContext.getEntityStream());
responseContext.setEntityStream(stream);
requestContext.setProperty(ENTITY_LOGGER_PROPERTY, stream);
// not calling log(b) here - it will be called by the interceptor
} else {
if (log.isDebugEnabled())
log.debug(logMsg.toString());
}
}
代码示例来源:origin: effektif/effektif
@Override
public void filter(final ContainerRequestContext requestContext, final ContainerResponseContext responseContext) throws IOException {
final long id = this._id.incrementAndGet();
final StringBuilder logMsg = new StringBuilder();
logMsg
.append("\n<<< ")
.append(responseContext.getStatus())
.append("\n");
if (logHeaders) {
logHeaders(logMsg, id, RESPONSE_PREFIX, responseContext.getStringHeaders());
}
if (logEntity && responseContext.hasEntity()) {
final OutputStream stream = new LoggingStream(logMsg, responseContext.getEntityStream());
responseContext.setEntityStream(stream);
requestContext.setProperty(ENTITY_LOGGER_PROPERTY, stream);
// not calling log(b) here - it will be called by the interceptor
} else {
if (log.isDebugEnabled())
log.debug(logMsg.toString());
}
}
代码示例来源:origin: effektif/effektif
@Override
public void filter(final ContainerRequestContext requestContext, final ContainerResponseContext responseContext) throws IOException {
final long id = this._id.incrementAndGet();
final StringBuilder logMsg = new StringBuilder();
logMsg
.append("\n<<< ")
.append(responseContext.getStatus())
.append("\n");
if (logHeaders) {
logHeaders(logMsg, id, RESPONSE_PREFIX, responseContext.getStringHeaders());
}
if (logEntity && responseContext.hasEntity()) {
final OutputStream stream = new LoggingStream(logMsg, responseContext.getEntityStream());
responseContext.setEntityStream(stream);
requestContext.setProperty(ENTITY_LOGGER_PROPERTY, stream);
// not calling log(b) here - it will be called by the interceptor
} else {
if (log.isDebugEnabled())
log.debug(logMsg.toString());
}
}
代码示例来源:origin: com.palantir.remoting3/jersey-servers
@Override
public void filter(ContainerRequestContext requestContext, ContainerResponseContext responseContext)
throws IOException {
if (isTooSmall(responseContext) || isEncoded(responseContext) || isUncompressable(responseContext)) {
return;
}
List<String> headerLines = requestContext.getHeaders().get(HttpHeaders.ACCEPT_ENCODING);
if (headerLines == null) {
return;
}
List<String> acceptedEncodings = parsedHeaders.getUnchecked(headerLines);
for (Encoding encoding : Encoding.values()) {
if (acceptedEncodings.contains(encoding.encoding)) {
MultivaluedMap<String, Object> headers = responseContext.getHeaders();
// Set 'Vary: Accept-Encoding' so intermediate caches differentiate between differently
// encoded responses
headers.add(HttpHeaders.VARY, HttpHeaders.ACCEPT_ENCODING);
headers.add(HttpHeaders.CONTENT_ENCODING, encoding.encoding);
responseContext.setEntityStream(encoding.compressor.apply(responseContext.getEntityStream()));
return;
}
}
}
代码示例来源:origin: com.github.docker-java/docker-java
@Override
public void filter(final ContainerRequestContext requestContext, final ContainerResponseContext responseContext)
throws IOException {
final long id = aid.incrementAndGet();
final StringBuilder b = new StringBuilder();
printResponseLine(b, "Server responded with a response", id, responseContext.getStatus());
printPrefixedHeaders(b, id, RESPONSE_PREFIX, responseContext.getStringHeaders());
if (printEntity && responseContext.hasEntity()) {
final OutputStream stream = new LoggingStream(b, responseContext.getEntityStream());
responseContext.setEntityStream(stream);
requestContext.setProperty(ENTITY_LOGGER_PROPERTY, stream);
// not calling log(b) here - it will be called by the interceptor
} else {
log(b);
}
}
代码示例来源:origin: stackoverflow.com
public class RangeResponseFilter implements ContainerResponseFilter {
private static final String RANGE = "Range";
private static final String ACCEPT_RANGES = "Accept-Ranges";
@Override
public void filter(ContainerRequestContext requestContext, ContainerResponseContext responseContext)
throws IOException {
if (requestContext.getHeaders().containsKey(RANGE)) {
String rangeHeader = requestContext.getHeaderString(RANGE);
String contentType = responseContext.getMediaType().toString();
OutputStream originOutputStream = responseContext.getEntityStream();
RangedOutputStream rangedOutputStream = new RangedOutputStream(originOutputStream, rangeHeader, contentType, responseContext.getHeaders());
responseContext.setStatus(Status.PARTIAL_CONTENT.getStatusCode());
responseContext.getHeaders().putSingle(ACCEPT_RANGES, rangedOutputStream.getAcceptRanges());
responseContext.setEntityStream(rangedOutputStream);
}
}
}
代码示例来源:origin: org.glassfish.jersey.core/jersey-common
@Override
public void filter(final ContainerRequestContext requestContext, final ContainerResponseContext responseContext)
throws IOException {
if (!logger.isLoggable(level)) {
return;
}
final Object requestId = requestContext.getProperty(LOGGING_ID_PROPERTY);
final long id = requestId != null ? (Long) requestId : _id.incrementAndGet();
final StringBuilder b = new StringBuilder();
printResponseLine(b, "Server responded with a response", id, responseContext.getStatus());
printPrefixedHeaders(b, id, RESPONSE_PREFIX, responseContext.getStringHeaders());
if (responseContext.hasEntity() && printEntity(verbosity, responseContext.getMediaType())) {
final OutputStream stream = new LoggingStream(b, responseContext.getEntityStream());
responseContext.setEntityStream(stream);
requestContext.setProperty(ENTITY_LOGGER_PROPERTY, stream);
// not calling log(b) here - it will be called by the interceptor
} else {
log(b);
}
}
}
代码示例来源:origin: hstaudacher/osgi-jax-rs-connector
@Override
public void filter(final ContainerRequestContext requestContext, final ContainerResponseContext responseContext)
throws IOException {
final Object requestId = requestContext.getProperty(LOGGING_ID_PROPERTY);
final long id = requestId != null ? (Long) requestId : _id.incrementAndGet();
final StringBuilder b = new StringBuilder();
printResponseLine(b, "Server responded with a response", id, responseContext.getStatus());
printPrefixedHeaders(b, id, RESPONSE_PREFIX, responseContext.getStringHeaders());
if (printEntity && responseContext.hasEntity()) {
final OutputStream stream = new LoggingStream(b, responseContext.getEntityStream());
responseContext.setEntityStream(stream);
requestContext.setProperty(ENTITY_LOGGER_PROPERTY, stream);
// not calling log(b) here - it will be called by the interceptor
} else {
log(b);
}
}
代码示例来源:origin: com.eclipsesource.jaxrs/jersey-all
@Override
public void filter(final ContainerRequestContext requestContext, final ContainerResponseContext responseContext)
throws IOException {
final Object requestId = requestContext.getProperty(LOGGING_ID_PROPERTY);
final long id = requestId != null ? (Long) requestId : _id.incrementAndGet();
final StringBuilder b = new StringBuilder();
printResponseLine(b, "Server responded with a response", id, responseContext.getStatus());
printPrefixedHeaders(b, id, RESPONSE_PREFIX, responseContext.getStringHeaders());
if (printEntity && responseContext.hasEntity()) {
final OutputStream stream = new LoggingStream(b, responseContext.getEntityStream());
responseContext.setEntityStream(stream);
requestContext.setProperty(ENTITY_LOGGER_PROPERTY, stream);
// not calling log(b) here - it will be called by the interceptor
} else {
log(b);
}
}
代码示例来源:origin: org.mycore/mycore-restapi
responseContext.setEntityStream(new ProxyOutputStream(responseContext.getEntityStream()) {
@Override
public void close() throws IOException {
代码示例来源:origin: hstaudacher/osgi-jax-rs-connector
@Override
public void filter(final ContainerRequestContext requestContext, final ContainerResponseContext responseContext)
throws IOException {
final Object requestId = requestContext.getProperty(LOGGING_ID_PROPERTY);
final long id = requestId != null ? (Long) requestId : _id.incrementAndGet();
final StringBuilder b = new StringBuilder();
printResponseLine(b, "Server responded with a response", id, responseContext.getStatus());
printPrefixedHeaders(b, id, RESPONSE_PREFIX, responseContext.getStringHeaders());
if (printEntity && responseContext.hasEntity()) {
final OutputStream stream = new LoggingStream(b, responseContext.getEntityStream());
responseContext.setEntityStream(stream);
requestContext.setProperty(ENTITY_LOGGER_PROPERTY, stream);
// not calling log(b) here - it will be called by the interceptor
} else {
log(b);
}
}
代码示例来源:origin: icode/ameba
/**
* {@inheritDoc}
*/
@Override
public void filter(final ContainerRequestContext requestContext, final ContainerResponseContext responseContext)
throws IOException {
final Object requestId = requestContext.getProperty(LOGGING_ID_PROPERTY);
final long id = requestId != null ? (Long) requestId : _id.incrementAndGet();
final StringBuilder b = new StringBuilder();
requestContext.setProperty(LOGGER_BUFFER_PROPERTY, b);
printResponseLine(b, "Server responded with a response", id, responseContext.getStatus());
if (printEntity && isSupportPrintType(responseContext.getMediaType()) && responseContext.hasEntity()) {
final OutputStream stream = new LoggingStream(b, responseContext.getEntityStream());
responseContext.setEntityStream(stream);
requestContext.setProperty(ENTITY_LOGGER_PROPERTY, stream);
// not calling log(b) here - it will be called by the interceptor
}
}
代码示例来源:origin: org.glassfish.jersey.bundles/jaxrs-ri
@Override
public void filter(final ContainerRequestContext requestContext, final ContainerResponseContext responseContext)
throws IOException {
if (!logger.isLoggable(level)) {
return;
}
final Object requestId = requestContext.getProperty(LOGGING_ID_PROPERTY);
final long id = requestId != null ? (Long) requestId : _id.incrementAndGet();
final StringBuilder b = new StringBuilder();
printResponseLine(b, "Server responded with a response", id, responseContext.getStatus());
printPrefixedHeaders(b, id, RESPONSE_PREFIX, responseContext.getStringHeaders());
if (responseContext.hasEntity() && printEntity(verbosity, responseContext.getMediaType())) {
final OutputStream stream = new LoggingStream(b, responseContext.getEntityStream());
responseContext.setEntityStream(stream);
requestContext.setProperty(ENTITY_LOGGER_PROPERTY, stream);
// not calling log(b) here - it will be called by the interceptor
} else {
log(b);
}
}
}
代码示例来源:origin: cd.connect.servlet/servlet-spring-jersey
@Override
public void filter(final ContainerRequestContext requestContext, final ContainerResponseContext responseContext) throws IOException {
String uri = requestContext.getUriInfo().getRequestUri().getPath();
if (jerseyFiltering.excludeForUri(uri)) {
return;
}
recordIncoming(requestContext, "responded");
ConnectContext.set(Constants.REST_STATUS_CODE, Integer.toString(responseContext.getStatus()));
Object requestId = requestContext.getProperty(LOGGING_ID_PROPERTY);
long id = requestId != null ? (Long) requestId : _id.incrementAndGet();
StringBuilder b = new StringBuilder();
printResponseLine(b, "Server responded with a response", id, responseContext.getStatus());
printPrefixedHeaders(b, id, RESPONSE_PREFIX, responseContext.getStringHeaders());
if (responseContext.hasEntity() && printEntity(verbosity, responseContext.getMediaType())) {
OutputStream stream = new BaseFilteringLogger.LoggingStream(b, responseContext.getEntityStream());
responseContext.setEntityStream(stream);
requestContext.setProperty(ENTITY_LOGGER_PROPERTY, stream);
// not calling log(b) here - it will be called by the interceptor
} else {
log(b);
}
}
代码示例来源:origin: org.kantega.respiro/respiro-message-collector-plugin
@Override
public void filter(
ContainerRequestContext requestContext,
ContainerResponseContext responseContext) throws IOException {
Collector.getCurrent().ifPresent(exchangeInfo -> {
JaxRsExchangeMessage msg = new JaxRsExchangeMessage(ExchangeMessage.Type.RESPONSE);
msg.setResponseCode(responseContext.getStatus());
msg.setHeaders(responseContext.getStringHeaders());
if (responseContext.hasEntity()) {
final OutputStream stream = new LoggingStream(msg, responseContext.getEntityStream()) {
@Override
public void collect() {
exchangeInfo.setOutMessage(msg);
Collector.endCollectionContext();
Collector.clearCollectionContext();
}
};
responseContext.setEntityStream(stream);
requestContext.setProperty(ENTITY_LOGGER_PROPERTY, stream);
// not calling log(b) here - it will be called by the interceptor
} else {
exchangeInfo.setOutMessage(msg);
Collector.endCollectionContext();
Collector.clearCollectionContext();
}
});
}
内容来源于网络,如有侵权,请联系作者删除!