View Javadoc

1   package com.atlassian.plugins.rest.common.security.jersey;
2   
3   import com.atlassian.plugins.rest.common.Status;
4   
5   import javax.ws.rs.core.Context;
6   import javax.ws.rs.core.Request;
7   import javax.ws.rs.core.Response;
8   import javax.ws.rs.ext.ExceptionMapper;
9   import javax.ws.rs.ext.Provider;
10  
11  /**
12   * <p>Exception mapper that takes care of {@link SecurityException security exceptions}</p>
13   * @since 1.0
14   */
15  @Provider
16  public class SecurityExceptionMapper implements ExceptionMapper<SecurityException>
17  {
18      @Context
19      Request request;
20  
21      public Response toResponse(SecurityException exception)
22      {
23          return Status.unauthorized().message(exception.getMessage()).responseBuilder().type(Status.variantFor(request)).build();
24      }
25  }