javax.ws.rs.ext
Interface ReaderInterceptorContext

All Superinterfaces:
InterceptorContext
All Known Implementing Classes:
ReaderInterceptorExecutor

public interface ReaderInterceptorContext
extends InterceptorContext

Context class used by ReaderInterceptor to intercept calls to (@link javax.ws.rs.ext.MessageBodyReader#readFrom}. The getters and setters in this context class correspond to the parameters of the intercepted method.

Since:
2.0
Author:
Santiago Pericas-Geertsen, Bill Burke
See Also:
ReaderInterceptor, MessageBodyReader

Method Summary
 MultivaluedMap<String,String> getHeaders()
          Get mutable map of HTTP headers.
 InputStream getInputStream()
          Get the input stream of the object to be read.
 Object proceed()
          Proceed to the next interceptor in the chain.
 void setInputStream(InputStream is)
          Set the input stream of the object to be read.
 
Methods inherited from interface javax.ws.rs.ext.InterceptorContext
getAnnotations, getGenericType, getMediaType, getProperty, getPropertyNames, getType, removeProperty, setAnnotations, setGenericType, setMediaType, setProperty, setType
 

Method Detail

proceed

Object proceed()
               throws IOException,
                      WebApplicationException
Proceed to the next interceptor in the chain. Return the result of the next interceptor invoked. Interceptors MUST explicitly call this method to continue the execution chain; the call to this method in the last interceptor of the chain will invoke the wrapped MessageBodyReader.readFrom(java.lang.Class, java.lang.reflect.Type, java.lang.annotation.Annotation[], javax.ws.rs.core.MediaType, javax.ws.rs.core.MultivaluedMap, java.io.InputStream).

Returns:
result of next interceptor invoked.
Throws:
IOException - if an IO error arises or is thrown by the wrapped MessageBodyReader.readFrom method.
WebApplicationException - thrown by the wrapped MessageBodyReader.readFrom method.

getInputStream

InputStream getInputStream()
Get the input stream of the object to be read. The JAX-RS runtime is responsible for closing the input stream.

Returns:
input stream of the object to be read.

setInputStream

void setInputStream(InputStream is)
Set the input stream of the object to be read. For example, by wrapping it with another input stream. The JAX-RS runtime is responsible for closing the input stream that is set.

Parameters:
is - new input stream.

getHeaders

MultivaluedMap<String,String> getHeaders()
Get mutable map of HTTP headers.

Note that while the headers are mutable, a reader interceptor should typically roll-back any header modifications once the call to context.proceed() returns, to avoid externally visible side-effects of the interceptor invocation.

Returns:
map of HTTP headers.


Copyright © 2007-2014, Oracle and/or its affiliates. All Rights Reserved. Use is subject to license terms.