org.glassfish.jersey.message.internal
Class ReaderInterceptorExecutor
java.lang.Object
org.glassfish.jersey.message.internal.ReaderInterceptorExecutor
- All Implemented Interfaces:
- javax.ws.rs.ext.InterceptorContext, javax.ws.rs.ext.ReaderInterceptorContext
public final class ReaderInterceptorExecutor
- extends Object
- implements javax.ws.rs.ext.ReaderInterceptorContext
Represents reader interceptor chain executor for both client and server side.
It constructs wrapped interceptor chain and invokes it. At the end of the chain
a message body reader execution interceptor is inserted,
which finally reads an entity from the output stream provided by the chain.
- Author:
- Miroslav Fuksa (miroslav.fuksa at oracle.com), Jakub Podlesak (jakub.podlesak at oracle.com)
|
Constructor Summary |
ReaderInterceptorExecutor(Class<?> rawType,
Type type,
Annotation[] annotations,
javax.ws.rs.core.MediaType mediaType,
javax.ws.rs.core.MultivaluedMap<String,String> headers,
PropertiesDelegate propertiesDelegate,
InputStream inputStream,
MessageBodyWorkers workers,
Iterable<javax.ws.rs.ext.ReaderInterceptor> readerInterceptors,
boolean translateNce)
Constructs a new executor to read given type from provided entityStream. |
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Methods inherited from interface javax.ws.rs.ext.InterceptorContext |
getAnnotations, getGenericType, getMediaType, getProperty, getPropertyNames, getType, removeProperty, setAnnotations, setGenericType, setMediaType, setProperty, setType |
ReaderInterceptorExecutor
public ReaderInterceptorExecutor(Class<?> rawType,
Type type,
Annotation[] annotations,
javax.ws.rs.core.MediaType mediaType,
javax.ws.rs.core.MultivaluedMap<String,String> headers,
PropertiesDelegate propertiesDelegate,
InputStream inputStream,
MessageBodyWorkers workers,
Iterable<javax.ws.rs.ext.ReaderInterceptor> readerInterceptors,
boolean translateNce)
- Constructs a new executor to read given type from provided
entityStream.
- Parameters:
rawType - raw Java entity type.type - generic Java entity type.annotations - array of annotations on the declaration of the artifact
that will be initialized with the produced instance. E.g. if the message
body is to be converted into a method parameter, this will be the annotations
on that parameter returned by Method.getParameterAnnotations.mediaType - media type of the HTTP entity.headers - mutable message headers.propertiesDelegate - request-scoped properties delegate.inputStream - entity input stream.workers - Message body workers.readerInterceptors - Reader interceptor that are to be used to intercept the reading of an entity.
The interceptors will be executed in the same order as given in this parameter.translateNce - if true, the NoContentException thrown by a selected message body
reader will be translated into a BadRequestException as required by
JAX-RS specification on the server side.
proceed
public Object proceed()
throws IOException
- Starts the interceptor chain execution.
- Specified by:
proceed in interface javax.ws.rs.ext.ReaderInterceptorContext
- Returns:
- an entity read from the stream.
- Throws:
IOException
getInputStream
public InputStream getInputStream()
- Specified by:
getInputStream in interface javax.ws.rs.ext.ReaderInterceptorContext
setInputStream
public void setInputStream(InputStream is)
- Specified by:
setInputStream in interface javax.ws.rs.ext.ReaderInterceptorContext
getHeaders
public javax.ws.rs.core.MultivaluedMap<String,String> getHeaders()
- Specified by:
getHeaders in interface javax.ws.rs.ext.ReaderInterceptorContext
getProperty
public Object getProperty(String name)
- Specified by:
getProperty in interface javax.ws.rs.ext.InterceptorContext
getPropertyNames
public Collection<String> getPropertyNames()
- Specified by:
getPropertyNames in interface javax.ws.rs.ext.InterceptorContext
setProperty
public void setProperty(String name,
Object object)
- Specified by:
setProperty in interface javax.ws.rs.ext.InterceptorContext
removeProperty
public void removeProperty(String name)
- Specified by:
removeProperty in interface javax.ws.rs.ext.InterceptorContext
getAnnotations
public Annotation[] getAnnotations()
- Specified by:
getAnnotations in interface javax.ws.rs.ext.InterceptorContext
setAnnotations
public void setAnnotations(Annotation[] annotations)
- Specified by:
setAnnotations in interface javax.ws.rs.ext.InterceptorContext
getType
public Class getType()
- Specified by:
getType in interface javax.ws.rs.ext.InterceptorContext
setType
public void setType(Class type)
- Specified by:
setType in interface javax.ws.rs.ext.InterceptorContext
getGenericType
public Type getGenericType()
- Specified by:
getGenericType in interface javax.ws.rs.ext.InterceptorContext
setGenericType
public void setGenericType(Type genericType)
- Specified by:
setGenericType in interface javax.ws.rs.ext.InterceptorContext
getMediaType
public javax.ws.rs.core.MediaType getMediaType()
- Specified by:
getMediaType in interface javax.ws.rs.ext.InterceptorContext
setMediaType
public void setMediaType(javax.ws.rs.core.MediaType mediaType)
- Specified by:
setMediaType in interface javax.ws.rs.ext.InterceptorContext
Copyright © 2007-2013, Oracle and/or its affiliates. All Rights Reserved. Use is subject to license terms.