1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 package org.codelibs.fess.exception;
17
18 import java.io.IOException;
19
20 import javax.servlet.http.HttpServletResponse;
21
22 public class WebApiException extends FessSystemException {
23
24 private static final long serialVersionUID = 1L;
25
26 private final int statusCode;
27
28 public int getStatusCode() {
29 return statusCode;
30 }
31
32 public WebApiException(final int statusCode, final String message, final Throwable cause) {
33 super(message, cause);
34 this.statusCode = statusCode;
35 }
36
37 public WebApiException(final int statusCode, final String message) {
38 super(message);
39 this.statusCode = statusCode;
40 }
41
42 public WebApiException(final int statusCode, final Exception e) {
43 this(statusCode, e.getMessage(), e);
44 }
45
46 public void sendError(final HttpServletResponse response) {
47 try {
48 response.sendError(statusCode, getMessage());
49 } catch (final IOException e) {
50 throw new FessSystemException("SC:" + statusCode + ": " + getMessage(), e);
51 }
52 }
53 }