comparison src/luan/modules/http/LuanHandler.java @ 785:d69d3c51c44e

more work on incremental cloning
author Franklin Schmidt <fschmidt@gmail.com>
date Thu, 01 Sep 2016 21:32:28 -0600
parents 655280eab1e2
children fe63c508a177
comparison
equal deleted inserted replaced
784:6a7c6879158d 785:d69d3c51c44e
68 return callRpc(luan,fnName,args); 68 return callRpc(luan,fnName,args);
69 } 69 }
70 70
71 public static Object callRpc(LuanState luan,String fnName,Object... args) throws LuanException { 71 public static Object callRpc(LuanState luan,String fnName,Object... args) throws LuanException {
72 synchronized(luan) { 72 synchronized(luan) {
73 LuanCloner cloner = new LuanCloner(true); 73 LuanCloner cloner = new LuanCloner(LuanCloner.Type.COMPLETE);
74 luan = (LuanState)cloner.clone(luan); 74 luan = (LuanState)cloner.clone(luan);
75 } 75 }
76 LuanTable rpc = (LuanTable)PackageLuan.require(luan,"luan:Rpc.luan"); 76 LuanTable rpc = (LuanTable)PackageLuan.require(luan,"luan:Rpc.luan");
77 LuanTable fns = (LuanTable)rpc.get(luan,"functions"); 77 LuanTable fns = (LuanTable)rpc.get(luan,"functions");
78 LuanFunction fn = (LuanFunction)fns.get(luan,fnName); 78 LuanFunction fn = (LuanFunction)fns.get(luan,fnName);