public override object Deserialize(IDictionary <string, object> dictionary, Type type, JavaScriptSerializer serializer) { WfClientProcessStartupParams startupParams = new WfClientProcessStartupParams(); startupParams.AutoStartInitialActivity = dictionary.GetValue("autoStartInitialActivity", true); startupParams.AutoCommit = dictionary.GetValue("autoCommit", false); startupParams.CheckStartProcessUserPermission = dictionary.GetValue("checkStartProcessUserPermission", true); startupParams.DefaultTaskTitle = dictionary.GetValue("defaultTaskTitle", string.Empty); startupParams.DefaultUrl = dictionary.GetValue("defaultUrl", string.Empty); startupParams.ProcessDescriptorKey = dictionary.GetValue("processDescriptorKey", string.Empty); startupParams.RelativeID = dictionary.GetValue("relativeID", string.Empty); startupParams.RelativeURL = dictionary.GetValue("relativeURL", string.Empty); startupParams.ResourceID = dictionary.GetValue("resourceID", string.Empty); startupParams.RuntimeProcessName = dictionary.GetValue("runtimeProcessName", string.Empty); startupParams.AutoPersist = dictionary.GetValue("autoPersist", true); startupParams.Creator = JSONSerializerExecute.Deserialize <WfClientUser>(dictionary.GetValue("creator", (object)null)); startupParams.Department = JSONSerializerExecute.Deserialize <WfClientOrganization>(dictionary.GetValue("department", (object)null)); startupParams.Opinion = JSONSerializerExecute.Deserialize <WfClientOpinion>(dictionary.GetValue("opinion", (object)null)); JSONSerializerExecute.FillDeserializedCollection(dictionary.GetValue("assignees", (object)null), startupParams.Assignees); JSONSerializerExecute.FillDeserializedDictionary(dictionary, "applicationRuntimeParameters", startupParams.ApplicationRuntimeParameters); JSONSerializerExecute.FillDeserializedDictionary(dictionary, "processContext", startupParams.ProcessContext); return(startupParams); }
public override object Deserialize(IDictionary <string, object> dictionary, Type type, JavaScriptSerializer serializer) { WfClientRuntimeContext context = new WfClientRuntimeContext(); context.AutoCalculate = dictionary.GetValue("autoCalculate", false); context.TaskTitle = dictionary.GetValue("taskTitle", string.Empty); context.NotifyTitle = dictionary.GetValue("notifyTitle", string.Empty); context.Operator = JSONSerializerExecute.Deserialize <WfClientUser>(dictionary.GetValue("operator", (object)null)); context.Opinion = JSONSerializerExecute.Deserialize <WfClientOpinion>(dictionary.GetValue("opinion", (object)null)); context.AutoPersist = dictionary.GetValue("autoPersist", true); context.UpdateTag = dictionary.GetValue("updateTag", -1); JSONSerializerExecute.FillDeserializedDictionary(dictionary, "applicationRuntimeParameters", context.ApplicationRuntimeParameters); JSONSerializerExecute.FillDeserializedDictionary(dictionary, "processContext", context.ProcessContext); return(context); }
public override object Deserialize(IDictionary <string, object> dictionary, Type type, JavaScriptSerializer serializer) { WfClientProcessInfoBase processInfo = this.CreateInstance(dictionary, type, serializer); processInfo.ID = dictionary.GetValue("id", string.Empty); processInfo.ProcessDescriptorKey = dictionary.GetValue("processDescriptorKey", string.Empty); processInfo.CurrentActivityKey = dictionary.GetValue("currentActivityKey", string.Empty); processInfo.RuntimeProcessName = dictionary.GetValue("runtimeProcessName", string.Empty); processInfo.Committed = dictionary.GetValue("committed", true); processInfo.ProcessDescriptorKey = dictionary.GetValue("processDescriptorKey", string.Empty); processInfo.Creator = JSONSerializerExecute.Deserialize <WfClientUser>(dictionary.GetValue("creator", (object)null)); processInfo.OwnerDepartment = JSONSerializerExecute.Deserialize <WfClientOrganization>(dictionary.GetValue("ownerDepartment", (object)null)); processInfo.RelativeID = dictionary.GetValue("relativeID", string.Empty); processInfo.ResourceID = dictionary.GetValue("resourceID", string.Empty); processInfo.RelativeUrl = dictionary.GetValue("relativeUrl", string.Empty); processInfo.SearchID = dictionary.GetValue("searchID", string.Empty); processInfo.OwnerActivityID = dictionary.GetValue("ownerActivityID", string.Empty); processInfo.OwnerTemplateKey = dictionary.GetValue("ownerTemplateKey", string.Empty); processInfo.StartTime = dictionary.GetValue("startTime", DateTime.MinValue); processInfo.EndTime = dictionary.GetValue("endTime", DateTime.MinValue); processInfo.Status = dictionary.GetValue("status", WfClientProcessStatus.NotRunning); processInfo.AuthorizationInfo = dictionary.GetValue("authorizationInfo", processInfo.AuthorizationInfo); processInfo.CanWithdraw = dictionary.GetValue("canWithdraw", false); processInfo.CanCancel = dictionary.GetValue("canCancel", false); processInfo.CanPause = dictionary.GetValue("canPause", false); processInfo.CanResume = dictionary.GetValue("canResume", false); processInfo.CanRestore = dictionary.GetValue("canRestore", false); processInfo.CurrentOpinion = JSONSerializerExecute.Deserialize <WfClientOpinion>(dictionary.GetValue("currentOpinion", (object)null)); processInfo.UpdateTag = dictionary.GetValue("updateTag", -1); JSONSerializerExecute.FillDeserializedDictionary(dictionary, "processContext", processInfo.ProcessContext); JSONSerializerExecute.FillDeserializedDictionary(dictionary, "applicationRuntimeParameters", processInfo.ApplicationRuntimeParameters); JSONSerializerExecute.FillDeserializedCollection(dictionary.GetValue("mainStreamActivityDescriptors", (object)null), processInfo.MainStreamActivityDescriptors); return(processInfo); }