Browse Source

Add local socket address for the connection #484

* add local address to HandshakeData
master
sergeygrigorev 8 years ago
parent
commit
b32ae8ce61
  1. 15
      src/main/java/com/corundumstudio/socketio/HandshakeData.java
  2. 1
      src/main/java/com/corundumstudio/socketio/handler/AuthorizeHandler.java

15
src/main/java/com/corundumstudio/socketio/HandshakeData.java

@ -31,6 +31,7 @@ public class HandshakeData implements Serializable {
private HttpHeaders headers; private HttpHeaders headers;
private InetSocketAddress address; private InetSocketAddress address;
private Date time = new Date(); private Date time = new Date();
private InetSocketAddress local;
private String url; private String url;
private Map<String, List<String>> urlParams; private Map<String, List<String>> urlParams;
private boolean xdomain; private boolean xdomain;
@ -40,10 +41,15 @@ public class HandshakeData implements Serializable {
} }
public HandshakeData(HttpHeaders headers, Map<String, List<String>> urlParams, InetSocketAddress address, String url, boolean xdomain) { public HandshakeData(HttpHeaders headers, Map<String, List<String>> urlParams, InetSocketAddress address, String url, boolean xdomain) {
this(headers, urlParams, address, null, url, xdomain);
}
public HandshakeData(HttpHeaders headers, Map<String, List<String>> urlParams, InetSocketAddress address, InetSocketAddress local, String url, boolean xdomain) {
super(); super();
this.headers = headers; this.headers = headers;
this.urlParams = urlParams; this.urlParams = urlParams;
this.address = address; this.address = address;
this.local = local;
this.url = url; this.url = url;
this.xdomain = xdomain; this.xdomain = xdomain;
} }
@ -57,6 +63,15 @@ public class HandshakeData implements Serializable {
return address; return address;
} }
/**
* Connection local address
*
* @return
*/
public InetSocketAddress getLocal() {
return local;
}
/** /**
* Http headers sent during first client request * Http headers sent during first client request
* *

1
src/main/java/com/corundumstudio/socketio/handler/AuthorizeHandler.java

@ -144,6 +144,7 @@ public class AuthorizeHandler extends ChannelInboundHandlerAdapter implements Di
HandshakeData data = new HandshakeData(req.headers(), params, HandshakeData data = new HandshakeData(req.headers(), params,
(InetSocketAddress)channel.remoteAddress(), (InetSocketAddress)channel.remoteAddress(),
(InetSocketAddress)channel.localAddress(),
req.uri(), origin != null && !origin.equalsIgnoreCase("null")); req.uri(), origin != null && !origin.equalsIgnoreCase("null"));
boolean result = false; boolean result = false;

Loading…
Cancel
Save