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   *
14   * @since 1.0
15   */
16  @Provider
17  public class SecurityExceptionMapper implements ExceptionMapper<SecurityException> {
18      @Context
19      Request request;
20  
21      public Response toResponse(SecurityException exception) {
22          return Status.unauthorized().message(exception.getMessage()).responseBuilder().type(Status.variantFor(request)).build();
23      }
24  }