org.glassfish.jersey.server.internal.monitoring
Class RequestEventImpl

java.lang.Object
  extended by org.glassfish.jersey.server.internal.monitoring.RequestEventImpl
All Implemented Interfaces:
RequestEvent

public class RequestEventImpl
extends Object
implements RequestEvent

Request event implementation. Instances are immutable.

Author:
Miroslav Fuksa (miroslav.fuksa at oracle.com)

Nested Class Summary
static class RequestEventImpl.Builder
          Builder of RequestEventImpl.
 
Nested classes/interfaces inherited from interface org.glassfish.jersey.server.monitoring.RequestEvent
RequestEvent.ExceptionCause, RequestEvent.Type
 
Method Summary
 ContainerRequest getContainerRequest()
          Get the container request.
 Iterable<javax.ws.rs.container.ContainerRequestFilter> getContainerRequestFilters()
          Get container request filters used during the request filtering phase.
 ContainerResponse getContainerResponse()
          Get the container response.
 Iterable<javax.ws.rs.container.ContainerResponseFilter> getContainerResponseFilters()
          Get container response filters used during the response filtering phase.
 Throwable getException()
          Get the latest exception, if any, thrown by the request and response processing.
 RequestEvent.ExceptionCause getExceptionCause()
          Get the exception cause.
 javax.ws.rs.ext.ExceptionMapper<?> getExceptionMapper()
          Get the ExceptionMapper that was found and used during the exception mapping phase.
 RequestEvent.Type getType()
          Returns the type of this event.
 ExtendedUriInfo getUriInfo()
          Get the extended uri info associated with this request.
 boolean isResponseSuccessfullyMapped()
          Returns true if the response was successfully mapped from an exception by exception mappers.
 boolean isResponseWritten()
          Returns true if the response has been successfully written.
 boolean isSuccess()
          Return true if the request and response has been successfully processed.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Method Detail

getContainerRequest

public ContainerRequest getContainerRequest()
Description copied from interface: RequestEvent
Get the container request. The container request is available for all event types. Returned request must not be modified by the request event listener.

Specified by:
getContainerRequest in interface RequestEvent
Returns:
The non-null container request.

getContainerResponse

public ContainerResponse getContainerResponse()
Description copied from interface: RequestEvent
Get the container response. The response is available only for certain event types. The returned response might vary also on the event type. The getter returns always the latest response being processed. So, for example for event RequestEvent.Type.EXCEPTION_MAPPING_FINISHED event type the method returns mapped response and not the original response created from execution of the resource method.

Specified by:
getContainerResponse in interface RequestEvent
Returns:
Latest response being processed or null if no response has been produced yet.

getException

public Throwable getException()
Description copied from interface: RequestEvent
Get the latest exception, if any, thrown by the request and response processing. When this method returns not null value, the method RequestEvent.getExceptionCause() returns the origin of the exception.

Specified by:
getException in interface RequestEvent
Returns:
Exception thrown or null if no exception has been thrown.

getType

public RequestEvent.Type getType()
Description copied from interface: RequestEvent
Returns the type of this event.

Specified by:
getType in interface RequestEvent
Returns:
Request event type.

getUriInfo

public ExtendedUriInfo getUriInfo()
Description copied from interface: RequestEvent
Get the extended uri info associated with this request. This method returns null for RequestEvent.Type.START event. The returned ExtendedUriInfo can be used to retrieve information relevant to many event types (especially event types describing the matching process).

Specified by:
getUriInfo in interface RequestEvent
Returns:
Extended uri info or null if it is not available yet.

getExceptionMapper

public javax.ws.rs.ext.ExceptionMapper<?> getExceptionMapper()
Description copied from interface: RequestEvent
Get the ExceptionMapper that was found and used during the exception mapping phase.

Specified by:
getExceptionMapper in interface RequestEvent
Returns:
Exception mapper or null if no exception mapper was found or even needed.

getContainerRequestFilters

public Iterable<javax.ws.rs.container.ContainerRequestFilter> getContainerRequestFilters()
Description copied from interface: RequestEvent
Get container request filters used during the request filtering phase.

Specified by:
getContainerRequestFilters in interface RequestEvent
Returns:
Container request filters or null if no filters were used yet.

getContainerResponseFilters

public Iterable<javax.ws.rs.container.ContainerResponseFilter> getContainerResponseFilters()
Description copied from interface: RequestEvent
Get container response filters used during the response filtering phase.

Specified by:
getContainerResponseFilters in interface RequestEvent
Returns:
Container response filter or null if no filters were used yet.

isSuccess

public boolean isSuccess()
Description copied from interface: RequestEvent
Return true if the request and response has been successfully processed. Response is successfully processed when the response code is smaller than 400 and response was successfully written. If the exception occurred but was mapped into a response with successful response code and written, this method returns true.

Specified by:
isSuccess in interface RequestEvent
Returns:
True if the response was successfully processed.

isResponseSuccessfullyMapped

public boolean isResponseSuccessfullyMapped()
Description copied from interface: RequestEvent
Returns true if the response was successfully mapped from an exception by exception mappers. When exception mapping phase failed or when no exception was thrown at all the, the method returns false. This method is convenient when handling the RequestEvent.Type.EXCEPTION_MAPPING_FINISHED event type.

Specified by:
isResponseSuccessfullyMapped in interface RequestEvent
Returns:
True if the exception occurred and it was successfully mapped into a response.

getExceptionCause

public RequestEvent.ExceptionCause getExceptionCause()
Description copied from interface: RequestEvent
Get the exception cause. This method is relevant only in cases when RequestEvent.getException() returns non-null value (for example when handling RequestEvent.Type.ON_EXCEPTION) event type.

Specified by:
getExceptionCause in interface RequestEvent
Returns:
Exception cause of the latest exception or null if no exception has occurred.

isResponseWritten

public boolean isResponseWritten()
Description copied from interface: RequestEvent
Returns true if the response has been successfully written. true is returned even for cases when the written response contains error response code.

Specified by:
isResponseWritten in interface RequestEvent
Returns:
true if the response was successfully written;false when the response has not been written yet or when writing of response failed.


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