Class ServerWriterInterceptorContext
- java.lang.Object
-
- org.jboss.resteasy.core.interception.jaxrs.AbstractWriterInterceptorContext
-
- org.jboss.resteasy.core.interception.jaxrs.ServerWriterInterceptorContext
-
- All Implemented Interfaces:
InterceptorContext,WriterInterceptorContext,AsyncWriterInterceptorContext
public class ServerWriterInterceptorContext extends AbstractWriterInterceptorContext
- Version:
- $Revision: 1 $
- Author:
- Bill Burke
-
-
Field Summary
-
Fields inherited from class org.jboss.resteasy.core.interception.jaxrs.AbstractWriterInterceptorContext
annotations, entity, genericType, headers, index, interceptors, mediaType, outputStream, providerFactory, requireAsyncIO, tracingLogger, type
-
-
Constructor Summary
Constructors Constructor Description ServerWriterInterceptorContext(WriterInterceptor[] interceptors, ResteasyProviderFactory providerFactory, Object entity, Class type, Type genericType, Annotation[] annotations, MediaType mediaType, MultivaluedMap<String,Object> headers, OutputStream outputStream, HttpRequest request, Consumer<Throwable> onWriteComplete)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description ObjectgetProperty(String name)Returns the property with the given name registered in the current request/response exchange context, ornullif there is no property by that name.Collection<String>getPropertyNames()Returns an immutablecollectioncontaining the property names available within the context of the current request/response exchange context.CompletionStage<Void>getStarted()voidremoveProperty(String name)Removes a property with the given name from the current request/response exchange context.protected MessageBodyWriterresolveWriter()voidsetProperty(String name, Object object)Binds an object to a given property name in the current request/response exchange context.protected CompletionStage<Void>writeTo(MessageBodyWriter writer)protected CompletionStage<Void>writeTo(AsyncMessageBodyWriter writer)-
Methods inherited from class org.jboss.resteasy.core.interception.jaxrs.AbstractWriterInterceptorContext
asyncProceed, getAnnotations, getAsyncOutputStream, getEntity, getGenericType, getHeaders, getMediaType, getOutputStream, getProcessedInterceptorCount, getType, getWriter, preferAsyncIo, proceed, setAnnotations, setAsyncOutputStream, setEntity, setGenericType, setMediaType, setOutputStream, setType, syncProceed, traceAfter, traceBefore
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface jakarta.ws.rs.ext.InterceptorContext
hasProperty
-
-
-
-
Constructor Detail
-
ServerWriterInterceptorContext
public ServerWriterInterceptorContext(WriterInterceptor[] interceptors, ResteasyProviderFactory providerFactory, Object entity, Class type, Type genericType, Annotation[] annotations, MediaType mediaType, MultivaluedMap<String,Object> headers, OutputStream outputStream, HttpRequest request, Consumer<Throwable> onWriteComplete)
-
-
Method Detail
-
resolveWriter
protected MessageBodyWriter resolveWriter()
- Specified by:
resolveWriterin classAbstractWriterInterceptorContext
-
getProperty
public Object getProperty(String name)
Description copied from interface:InterceptorContextReturns the property with the given name registered in the current request/response exchange context, ornullif there is no property by that name.A property allows a JAX-RS filters and interceptors to exchange additional custom information not already provided by this interface.
A list of supported properties can be retrieved using
InterceptorContext.getPropertyNames(). Custom property names should follow the same convention as package names.In a Servlet container, on the server side, the properties are backed by the
ServletRequestand contain all the attributes available in theServletRequest.- Parameters:
name- aStringspecifying the name of the property.- Returns:
- an
Objectcontaining the value of the property, ornullif no property exists matching the given name. - See Also:
InterceptorContext.getPropertyNames()
-
getStarted
public CompletionStage<Void> getStarted()
- Overrides:
getStartedin classAbstractWriterInterceptorContext
-
writeTo
protected CompletionStage<Void> writeTo(MessageBodyWriter writer) throws IOException
- Overrides:
writeToin classAbstractWriterInterceptorContext- Throws:
IOException
-
writeTo
protected CompletionStage<Void> writeTo(AsyncMessageBodyWriter writer)
- Overrides:
writeToin classAbstractWriterInterceptorContext
-
getPropertyNames
public Collection<String> getPropertyNames()
Description copied from interface:InterceptorContextReturns an immutablecollectioncontaining the property names available within the context of the current request/response exchange context.Use the
InterceptorContext.getProperty(java.lang.String)method with a property name to get the value of a property.In a Servlet container, the properties are synchronized with the
ServletRequestand expose all the attributes available in theServletRequest. Any modifications of the properties are also reflected in the set of properties of the associatedServletRequest.- Returns:
- an immutable
collectionof property names. - See Also:
InterceptorContext.getProperty(java.lang.String)
-
setProperty
public void setProperty(String name, Object object)
Description copied from interface:InterceptorContextBinds an object to a given property name in the current request/response exchange context. If the name specified is already used for a property, this method will replace the value of the property with the new value.A property allows a JAX-RS filters and interceptors to exchange additional custom information not already provided by this interface.
A list of supported properties can be retrieved using
InterceptorContext.getPropertyNames(). Custom property names should follow the same convention as package names.If a
nullvalue is passed, the effect is the same as calling theInterceptorContext.removeProperty(String)method.In a Servlet container, on the server side, the properties are backed by the
ServletRequestand contain all the attributes available in theServletRequest.- Parameters:
name- aStringspecifying the name of the property.object- anObjectrepresenting the property to be bound.
-
removeProperty
public void removeProperty(String name)
Description copied from interface:InterceptorContextRemoves a property with the given name from the current request/response exchange context. After removal, subsequent calls toInterceptorContext.getProperty(java.lang.String)to retrieve the property value will returnnull.In a Servlet container, on the server side, the properties are backed by the
ServletRequestand contain all the attributes available in theServletRequest.- Parameters:
name- aStringspecifying the name of the property to be removed.
-
-