Exemplo n.º 1
0
        public static void dispatch(JObject jobj, ExternalMessageSender.RequestResponder reqResponder, VersionedModelClassNS.VersionedModelClass versionedModel)
        {
            string type = jobj["type"].ToString();

            if (type == "request_model_changes")
            {
                versionedModel.recordModel();
                ModelChangeReqResponseNS.ModelChangeReqResponse reqResponse = ModelChangeRequest.dispatch(versionedModel.getCurrent(), jobj);

                reqResponder.sendModelChangeReqResponse(reqResponse);
                ExternalMessageSender.DataChangedNotifier.notifyDataChanged(ModelUtilsNS.ModelUtils.getResponseJsonData(versionedModel.getCurrent()));
            }
            else if (type == "request_versioning_change")
            {
                ModelVersioningReqResponses.ModelVersioningReqResponse reqResponse = VersioningChangeRequest.dispatch(jobj, versionedModel);

                reqResponder.sendVersioningChangeReqResponse(reqResponse);
                ExternalMessageSender.DataChangedNotifier.notifyDataChanged(ModelUtilsNS.ModelUtils.getResponseJsonData(versionedModel.getCurrent()));
            }
            else if (type == "request_model_info")
            {
                ModelInfoReqResponses.ModelInfoReqResponse reqResponse = ModelInfoRequest.dispatch(jobj, reqResponder, versionedModel);
                reqResponder.sendModelInfoReqResponse(reqResponse);
            }
            else
            {
                throw new InvalidModelReqType(type);
            }
        }
Exemplo n.º 2
0
        public static void dispatch(JObject jobj, VersionedModelClassNS.VersionedModelClass versionedModel)
        {
            string clientId  = jobj["client_id"].ToString();
            string requestId = jobj["client_message"]["requestId"].ToString();

            JObject clientRequest = jobj["client_message"]["request"] as JObject;

            ExternalMessageSender.RequestResponder reqResponder = new ExternalMessageSender.RequestResponder(
                requestId,
                clientId
                );

            ModelRequests.Dispatcher.dispatch(clientRequest, reqResponder, versionedModel);
        }