瀏覽代碼

added dontUseCache

Nicolas Cannasse 19 年之前
父節點
當前提交
69675d7cb2
共有 1 個文件被更改,包括 8 次插入0 次删除
  1. 8 0
      std/neko/net/RemotingServer.hx

+ 8 - 0
std/neko/net/RemotingServer.hx

@@ -29,10 +29,12 @@ class RemotingServer {
 	var objects : Hash<Dynamic>;
 	var objects : Hash<Dynamic>;
 	var prefix : String;
 	var prefix : String;
 	var log : String -> Void;
 	var log : String -> Void;
+	var duc : Bool;
 
 
 	public function new() {
 	public function new() {
 		objects = new Hash();
 		objects = new Hash();
 		log = null;
 		log = null;
+		duc = false;
 	}
 	}
 
 
 	public function addObject( name : String, obj : Dynamic ) {
 	public function addObject( name : String, obj : Dynamic ) {
@@ -47,6 +49,10 @@ class RemotingServer {
 		prefix = p;
 		prefix = p;
 	}
 	}
 
 
+	public function dontUseCache() {
+		duc = true;
+	}
+
 	public function resolvePath( path : Array<String> ) : Dynamic {
 	public function resolvePath( path : Array<String> ) : Dynamic {
 		var objname = path.shift();
 		var objname = path.shift();
 		if( objname == null )
 		if( objname == null )
@@ -79,6 +85,7 @@ class RemotingServer {
 				throw "Calling not-a-function '"+f+"'";
 				throw "Calling not-a-function '"+f+"'";
 			var v = Reflect.callMethod(obj,funptr,args);
 			var v = Reflect.callMethod(obj,funptr,args);
 			var s = new haxe.Serializer();
 			var s = new haxe.Serializer();
+			if( duc ) s.dontUseCache();
 			s.serialize(v);
 			s.serialize(v);
 			neko.Lib.print("hxr");
 			neko.Lib.print("hxr");
 			neko.Lib.print(s.toString());
 			neko.Lib.print(s.toString());
@@ -89,6 +96,7 @@ class RemotingServer {
 				log("\n\n");
 				log("\n\n");
 			}
 			}
 			var s = new haxe.Serializer();
 			var s = new haxe.Serializer();
+			if( duc ) s.dontUseCache();
 			s.serializeException(e);
 			s.serializeException(e);
 			neko.Lib.print("hxr");
 			neko.Lib.print("hxr");
 			neko.Lib.print(s.toString());
 			neko.Lib.print(s.toString());