Przeglądaj źródła

added setLogger.

Nicolas Cannasse 19 lat temu
rodzic
commit
5ee02d2c3d
1 zmienionych plików z 11 dodań i 0 usunięć
  1. 11 0
      std/haxe/remoting/Server.hx

+ 11 - 0
std/haxe/remoting/Server.hx

@@ -28,15 +28,21 @@ class Server {
 
 	var objects : Hash<Dynamic>;
 	var prefix : String;
+	var log : String -> Void;
 
 	public function new() {
 		objects = new Hash();
+		log = null;
 	}
 
 	public function addObject( name : String, obj : Dynamic ) {
 		objects.set(name,obj);
 	}
 
+	public function setLogger( l ) {
+		log = l;
+	}
+
 	public function setPrivatePrefix( p : String ) {
 		prefix = p;
 	}
@@ -77,6 +83,11 @@ class Server {
 			neko.Lib.print("hxr");
 			neko.Lib.print(s.toString());
 		} catch( e : Dynamic ) {
+			if( log != null ) {
+				log(neko.Stack.toString(neko.Stack.exceptionStack()));
+				log(Std.string(e));
+				log("\n\n");
+			}
 			var s = new haxe.Serializer();
 			s.serializeException(e);
 			neko.Lib.print("hxr");