1 //
2 // ========================================================================
3 // Copyright (c) 1995-2016 Mort Bay Consulting Pty. Ltd.
4 // ------------------------------------------------------------------------
5 // All rights reserved. This program and the accompanying materials
6 // are made available under the terms of the Eclipse Public License v1.0
7 // and Apache License v2.0 which accompanies this distribution.
8 //
9 // The Eclipse Public License is available at
10 // http://www.eclipse.org/legal/epl-v10.html
11 //
12 // The Apache License v2.0 is available at
13 // http://www.opensource.org/licenses/apache2.0.php
14 //
15 // You may elect to redistribute this code under either of these licenses.
16 // ========================================================================
17 //
18
19 package org.eclipse.jetty.websocket.api;
20
21 import java.net.URI;
22
23 /**
24 * Exception during WebSocket Upgrade Handshake.
25 */
26 @SuppressWarnings("serial")
27 public class UpgradeException extends WebSocketException
28 {
29 private final URI requestURI;
30 private final int responseStatusCode;
31
32 public UpgradeException(URI requestURI, int responseStatusCode, String message)
33 {
34 super(message);
35 this.requestURI = requestURI;
36 this.responseStatusCode = responseStatusCode;
37 }
38
39 public UpgradeException(URI requestURI, int responseStatusCode, String message, Throwable cause)
40 {
41 super(message,cause);
42 this.requestURI = requestURI;
43 this.responseStatusCode = responseStatusCode;
44 }
45
46 public UpgradeException(URI requestURI, Throwable cause)
47 {
48 super(cause);
49 this.requestURI = requestURI;
50 this.responseStatusCode = -1;
51 }
52
53 public URI getRequestURI()
54 {
55 return requestURI;
56 }
57
58 public int getResponseStatusCode()
59 {
60 return responseStatusCode;
61 }
62 }