Class InterceptorExecutor<T>
- All Implemented Interfaces:
javax.ws.rs.ext.InterceptorContext, PropertiesDelegate
- Direct Known Subclasses:
ReaderInterceptorExecutor, WriterInterceptorExecutor
InterceptorContext which is common for ReaderInterceptorContext
and WriterInterceptorContext implementations.-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionprivate static classHolder of interceptor instance and timestamp of the interceptor invocation (in ns). -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate Annotation[]private Typeprivate javax.ws.rs.core.MediaTypeprivate final PropertiesDelegateprivate final TracingLoggerprivate Class<?> -
Constructor Summary
ConstructorsConstructorDescriptionInterceptorExecutor(Class<?> rawType, Type type, Annotation[] annotations, javax.ws.rs.core.MediaType mediaType, PropertiesDelegate propertiesDelegate) Constructor initializes common properties of this abstract class. -
Method Summary
Modifier and TypeMethodDescriptionprotected final voidClear last traced interceptor information.javax.ws.rs.core.MediaTypegetProperty(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.Returns an immutablecollectioncontaining the property names available within the context of the current request/response exchange context.protected final TracingLoggerGet tracing logger instance configured in via properties.getType()voidremoveProperty(String name) Removes a property with the given name from the current request/response exchange context.voidsetAnnotations(Annotation[] annotations) voidsetGenericType(Type genericType) voidsetMediaType(javax.ws.rs.core.MediaType mediaType) voidsetProperty(String name, Object object) Binds an object to a given property name in the current request/response exchange context.voidprotected final voidtraceAfter(T interceptor, TracingLogger.Event event) Tracing support - log invocation of interceptor AFTER context.proceed() call.protected final voidtraceBefore(T interceptor, TracingLogger.Event event) Tracing support - log invocation of interceptor BEFORE context.proceed() call.
-
Field Details
-
propertiesDelegate
-
annotations
-
type
-
genericType
-
mediaType
private javax.ws.rs.core.MediaType mediaType -
tracingLogger
-
lastTracedInterceptor
-
-
Constructor Details
-
InterceptorExecutor
public InterceptorExecutor(Class<?> rawType, Type type, Annotation[] annotations, javax.ws.rs.core.MediaType mediaType, PropertiesDelegate propertiesDelegate) Constructor initializes common properties of this abstract class.- Parameters:
rawType- raw Java entity type.type- generic Java entity type.annotations- Annotations on the formal declaration of the resource method parameter that is the target of the message body conversion. SeeInterceptorContext.getAnnotations().mediaType- MediaType of HTTP entity. SeeInterceptorContext.getMediaType().propertiesDelegate- request-scoped properties delegate.
-
-
Method Details
-
getProperty
Description copied from interface:PropertiesDelegateReturns 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
PropertiesDelegate.getPropertyNames(). Custom property names should follow the same convention as package names.- Specified by:
getPropertyin interfacejavax.ws.rs.ext.InterceptorContext- Specified by:
getPropertyin interfacePropertiesDelegate- 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:
-
getPropertyNames
Description copied from interface:PropertiesDelegateReturns an immutablecollectioncontaining the property names available within the context of the current request/response exchange context.Use the
PropertiesDelegate.getProperty(String)method with a property name to get the value of a property.- Specified by:
getPropertyNamesin interfacejavax.ws.rs.ext.InterceptorContext- Specified by:
getPropertyNamesin interfacePropertiesDelegate- Returns:
- an immutable
collectionof property names. - See Also:
-
setProperty
Description copied from interface:PropertiesDelegateBinds 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
PropertiesDelegate.getPropertyNames(). Custom property names should follow the same convention as package names.If a
nullvalue is passed, the effect is the same as calling thePropertiesDelegate.removeProperty(String)method.- Specified by:
setPropertyin interfacejavax.ws.rs.ext.InterceptorContext- Specified by:
setPropertyin interfacePropertiesDelegate- Parameters:
name- aStringspecifying the name of the property.object- anObjectrepresenting the property to be bound.
-
removeProperty
Description copied from interface:PropertiesDelegateRemoves a property with the given name from the current request/response exchange context. After removal, subsequent calls toPropertiesDelegate.getProperty(String)to retrieve the property value will returnnull.- Specified by:
removePropertyin interfacejavax.ws.rs.ext.InterceptorContext- Specified by:
removePropertyin interfacePropertiesDelegate- Parameters:
name- aStringspecifying the name of the property to be removed.
-
getTracingLogger
Get tracing logger instance configured in via properties.- Returns:
- tracing logger instance.
-
traceBefore
Tracing support - log invocation of interceptor BEFORE context.proceed() call.- Parameters:
interceptor- invoked interceptorevent- event type to be tested
-
traceAfter
Tracing support - log invocation of interceptor AFTER context.proceed() call.- Parameters:
interceptor- invoked interceptorevent- event type to be tested
-
clearLastTracedInterceptor
protected final void clearLastTracedInterceptor()Clear last traced interceptor information. -
getAnnotations
- Specified by:
getAnnotationsin interfacejavax.ws.rs.ext.InterceptorContext
-
setAnnotations
- Specified by:
setAnnotationsin interfacejavax.ws.rs.ext.InterceptorContext
-
getType
- Specified by:
getTypein interfacejavax.ws.rs.ext.InterceptorContext
-
setType
- Specified by:
setTypein interfacejavax.ws.rs.ext.InterceptorContext
-
getGenericType
- Specified by:
getGenericTypein interfacejavax.ws.rs.ext.InterceptorContext
-
setGenericType
- Specified by:
setGenericTypein interfacejavax.ws.rs.ext.InterceptorContext
-
getMediaType
public javax.ws.rs.core.MediaType getMediaType()- Specified by:
getMediaTypein interfacejavax.ws.rs.ext.InterceptorContext
-
setMediaType
public void setMediaType(javax.ws.rs.core.MediaType mediaType) - Specified by:
setMediaTypein interfacejavax.ws.rs.ext.InterceptorContext
-