Nicolas Cannasse 19 lat temu
rodzic
commit
2af531a192
1 zmienionych plików z 13 dodań i 1 usunięć
  1. 13 1
      std/haxe/remoting/AsyncConnection.hx

+ 13 - 1
std/haxe/remoting/AsyncConnection.hx

@@ -58,10 +58,17 @@ class AsyncConnection implements Dynamic<AsyncConnection> {
 		if( __data.connect ) {
 			var me = this;
 			var p = params.copy();
+			#if flash9
+			p.unshift(new flash.net.Responder(
+				function(e) { me.__error.ref(e); },
+				function(r) { onData(r); }
+			));
+			#else true
 			p.unshift({
 				onStatus : function(e) { me.__error.ref(e); },
 				onResult : function(r) { onData(r); }
 			});
+			#end
 			p.unshift(__path.join("."));
 			__data.call.apply(__data,p);
 			return;
@@ -101,13 +108,18 @@ class AsyncConnection implements Dynamic<AsyncConnection> {
 	public static function amfConnect( gatewayUrl : String ) {
 		#if flash9
 		var c = new flash.net.NetConnection();
+		var cnx = new AsyncConnection(c,[]);
+		c.addEventListener(flash.events.NetStatusEvent.NET_STATUS,function(e:flash.events.NetStatusEvent) {
+			cnx.onError(e);
+		});
 		c.connect(gatewayUrl);
+		return cnx;
 		#else true
 		var c = new flash.NetConnection();
 		if( !c.connect(gatewayUrl) )
 			throw "Could not connected to gateway url "+gatewayUrl;
-		#end
 		return new AsyncConnection(c,[]);
+		#end
 	}
 	#end