public override void handle(EzyArray data) { int appId = data.get <int>(0); EzyArray commandData = data.get <EzyArray>(1); String cmd = commandData.get <String>(0); EzyData responseData = commandData.get <EzyData>(1, null); EzyApp app = client.getAppById(appId); if (app == null) { logger.info("receive message when has not joined app yet"); return; } EzyAppDataHandler dataHandler = app.getDataHandler(cmd); if (dataHandler != null) { dataHandler.handle(app, responseData); } else { logger.warn("app: " + app.getName() + " has no handler for command: " + cmd); } }
public EzyAppDataHandler getHandler(Object cmd) { EzyAppDataHandler handler = null; if (handlers.ContainsKey(cmd)) { handler = handlers[cmd]; } return(handler); }
public EzyAppDataHandler getDataHandler(Object cmd) { EzyAppDataHandler handler = dataHandlers.getHandler(cmd); return(handler); }
public void addHandler(Object cmd, EzyAppDataHandler handler) { handlers[cmd] = handler; }
public EzyAppSetup addDataHandler(Object cmd, EzyAppDataHandler dataHandler) { dataHandlers.addHandler(cmd, dataHandler); return(this); }