beremiz

make it possible to update XSD schema in project controller after new
target PLC is added or removed.

For example:


...
import targets
targets.targets["PLC"] = {"xsd": os.path.join(self.customBeremizPath, "PLCtarget", xsd),
"class": lambda: PLC_target,
"code": {"plc_PLC_main.c": os.path.join(self.customBeremizPath, "PLCtarget", "plc_PLC_main.c")}
}

from ProjectController import ProjectController, GetProjectControllerXSD
ProjectController.XSD = GetProjectControllerXSD()
from pyjs.jsonrpc import JSONRPCServiceBase
class JSONRPCService(JSONRPCServiceBase):
def serve(self):
return self.process(request.body.read())
def __call__(self, func):
self.methods[func.__name__] = func
return func