Skip to content

Commit 3130019

Browse files
committed
Added some http header for the server handshake
Date, Server and changing switching protocol to web soccket protocol handshake
1 parent 3a6adbb commit 3130019

File tree

1 file changed

+27
-0
lines changed

1 file changed

+27
-0
lines changed
Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,40 @@
11
package org.java_websocket.drafts;
22

3+
import org.java_websocket.exceptions.InvalidHandshakeException;
4+
import org.java_websocket.handshake.ClientHandshake;
5+
import org.java_websocket.handshake.HandshakeBuilder;
6+
import org.java_websocket.handshake.ServerHandshakeBuilder;
7+
8+
import java.text.SimpleDateFormat;
9+
import java.util.Calendar;
10+
import java.util.Locale;
11+
import java.util.TimeZone;
12+
313
/**
414
* Implementation for the RFC 6455 websocket protocol
515
* This is the recommended class for your websocket connection
616
*/
717
public class Draft_6455 extends Draft_17 {
818

19+
@Override
20+
public HandshakeBuilder postProcessHandshakeResponseAsServer(ClientHandshake request, ServerHandshakeBuilder response) throws InvalidHandshakeException {
21+
super.postProcessHandshakeResponseAsServer(request, response);
22+
response.setHttpStatusMessage("Web Socket Protocol Handshake");
23+
response.put("Server", "TooTallNate Java-WebSocket");
24+
response.put("Date", getServerTime());
25+
return response;
26+
}
27+
928
@Override
1029
public Draft copyInstance() {
1130
return new Draft_6455();
1231
}
32+
33+
private String getServerTime() {
34+
Calendar calendar = Calendar.getInstance();
35+
SimpleDateFormat dateFormat = new SimpleDateFormat(
36+
"EEE, dd MMM yyyy HH:mm:ss z", Locale.US);
37+
dateFormat.setTimeZone(TimeZone.getTimeZone("GMT"));
38+
return dateFormat.format(calendar.getTime());
39+
}
1340
}

0 commit comments

Comments
 (0)