|
12 | 12 | */
|
13 | 13 | package org.asynchttpclient.websocket;
|
14 | 14 |
|
| 15 | +import java.util.ArrayList; |
| 16 | +import java.util.List; |
| 17 | +import java.util.concurrent.atomic.AtomicBoolean; |
| 18 | + |
15 | 19 | import org.asynchttpclient.AsyncHandler;
|
16 | 20 | import org.asynchttpclient.HttpResponseBodyPart;
|
17 | 21 | import org.asynchttpclient.HttpResponseHeaders;
|
18 | 22 | import org.asynchttpclient.HttpResponseStatus;
|
19 | 23 | import org.asynchttpclient.UpgradeHandler;
|
20 | 24 |
|
21 |
| -import java.util.concurrent.ConcurrentLinkedQueue; |
22 |
| -import java.util.concurrent.atomic.AtomicBoolean; |
23 |
| - |
24 | 25 | /**
|
25 | 26 | * An {@link AsyncHandler} which is able to execute WebSocket upgrade. Use the Builder for configuring WebSocket options.
|
26 | 27 | */
|
27 | 28 | public class WebSocketUpgradeHandler implements UpgradeHandler<WebSocket>, AsyncHandler<WebSocket> {
|
28 | 29 |
|
29 | 30 | private WebSocket webSocket;
|
30 |
| - private final ConcurrentLinkedQueue<WebSocketListener> listeners; |
| 31 | + private final List<WebSocketListener> listeners; |
31 | 32 | private final AtomicBoolean ok = new AtomicBoolean(false);
|
32 | 33 | private final AtomicBoolean onSuccessCalled = new AtomicBoolean(false);
|
33 | 34 | private int status;
|
34 | 35 |
|
35 |
| - public WebSocketUpgradeHandler(ConcurrentLinkedQueue<WebSocketListener> listeners) { |
| 36 | + public WebSocketUpgradeHandler(List<WebSocketListener> listeners) { |
36 | 37 | this.listeners = listeners;
|
37 | 38 | }
|
38 | 39 |
|
@@ -144,7 +145,7 @@ public final void onClose(WebSocket webSocket, int status, String reasonPhrase)
|
144 | 145 | */
|
145 | 146 | public final static class Builder {
|
146 | 147 |
|
147 |
| - private ConcurrentLinkedQueue<WebSocketListener> listeners = new ConcurrentLinkedQueue<WebSocketListener>(); |
| 148 | + private List<WebSocketListener> listeners = new ArrayList<WebSocketListener>(); |
148 | 149 |
|
149 | 150 | /**
|
150 | 151 | * Add a {@link WebSocketListener} that will be added to the {@link WebSocket}
|
|
0 commit comments