[Red5commits] [906] added "getRemoteAddress" to "IConnection"

jbauch luke at codegent.com
Tue Jun 20 04:11:48 EDT 2006


added "getRemoteAddress" to "IConnection"


Timestamp: 06/08/06 18:51:51 (2 weeks ago) 
Change: 906 
Author: jbauch

Files (see diff or trac for details): 
java/server/trunk/src/org/red5/server/BaseConnection.java
java/server/trunk/src/org/red5/server/api/IConnection.java
java/server/trunk/src/org/red5/server/net/rtmp/RTMPConnection.java
java/server/trunk/src/org/red5/server/net/rtmp/RTMPMinaConnection.java
java/server/trunk/test/org/red5/server/api/test/TestConnection.java


Trac: http://mirror1.cvsdude.com/trac/osflash/red5/changeset/906

Index: /java/server/trunk/test/org/red5/server/api/test/TestConnection.java
===================================================================
--- /java/server/trunk/test/org/red5/server/api/test/TestConnection.java (revision 654)
+++ /java/server/trunk/test/org/red5/server/api/test/TestConnection.java (revision 906)
@@ -6,5 +6,5 @@
 
 	public TestConnection(String host, String path, String sessionId){
-		super(PERSISTENT,host,path,sessionId,null);
+		super(PERSISTENT,host,null,path,sessionId,null);
 	}
 	
Index: /java/server/trunk/src/org/red5/server/net/rtmp/RTMPConnection.java
===================================================================
--- /java/server/trunk/src/org/red5/server/net/rtmp/RTMPConnection.java (revision 870)
+++ /java/server/trunk/src/org/red5/server/net/rtmp/RTMPConnection.java (revision 906)
@@ -71,5 +71,5 @@
 		// These parameters will be set during the call of "connect" later.
 		//super(null, "");	temp fix to get things to compile
-		super(type,null,null,null,null);
+		super(type,null,null,null,null,null);
 		sharedObjects = new HashMap<String,ISharedObject>();
 	}
Index: /java/server/trunk/src/org/red5/server/net/rtmp/RTMPMinaConnection.java
===================================================================
--- /java/server/trunk/src/org/red5/server/net/rtmp/RTMPMinaConnection.java (revision 871)
+++ /java/server/trunk/src/org/red5/server/net/rtmp/RTMPMinaConnection.java (revision 906)
@@ -1,4 +1,6 @@
 package org.red5.server.net.rtmp;
 
+import java.net.InetSocketAddress;
+import java.net.SocketAddress;
 import java.util.Map;
 
@@ -18,4 +20,9 @@
 	public RTMPMinaConnection(IoSession protocolSession) {
 		super(PERSISTENT);
+		SocketAddress remote = protocolSession.getRemoteAddress();
+		if (remote instanceof InetSocketAddress)
+			remoteAddress = ((InetSocketAddress) remote).getAddress().getHostAddress();
+		else
+			remoteAddress = remote.toString();
 		this.ioSession = protocolSession;
 	}
Index: /java/server/trunk/src/org/red5/server/api/IConnection.java
===================================================================
--- /java/server/trunk/src/org/red5/server/api/IConnection.java (revision 698)
+++ /java/server/trunk/src/org/red5/server/api/IConnection.java (revision 906)
@@ -103,4 +103,11 @@
 	
 	/**
+	 * Get the ip address the client is connected from.
+	 * 
+	 * @return the ip address of the client
+	 */
+	public String getRemoteAddress();
+	
+	/**
 	 * Get the path for this connection
 	 * This is not updated if you switch scope
Index: /java/server/trunk/src/org/red5/server/BaseConnection.java
===================================================================
--- /java/server/trunk/src/org/red5/server/BaseConnection.java (revision 895)
+++ /java/server/trunk/src/org/red5/server/BaseConnection.java (revision 906)
@@ -23,4 +23,5 @@
 	protected String type;
 	protected String host;
+	protected String remoteAddress;
 	protected String path;
 	protected String sessionId;
@@ -31,7 +32,8 @@
 	protected Set<IBasicScope> basicScopes;
 	
-	public BaseConnection(String type, String host, String path, String sessionId, Map<String,String> params){
+	public BaseConnection(String type, String host, String remoteAddress, String path, String sessionId, Map<String,String> params){
 		this.type = type;
 		this.host = host;
+		this.remoteAddress = remoteAddress;
 		this.path = path;
 		this.sessionId = sessionId;
@@ -58,4 +60,8 @@
 	public String getHost() {
 		return host;
+	}
+
+	public String getRemoteAddress() {
+		return remoteAddress;
 	}
 


Note:
Diffs are chopped if more than 30k.
This is to get past the limit on the mailing list.



More information about the Red5commits mailing list