View Javadoc

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