Example #1
0
        public override object Deserialize(IDictionary <string, object> dictionary, Type type, JavaScriptSerializer serializer)
        {
            WfClientDynamicResourceDescriptor conditionResourceDesp = (WfClientDynamicResourceDescriptor)base.Deserialize(dictionary, type, serializer);

            conditionResourceDesp.Name      = dictionary.GetValue("name", string.Empty);
            conditionResourceDesp.Condition = JSONSerializerExecute.Deserialize <WfClientConditionDescriptor>(dictionary.GetValue("condition", (object)null));

            return(conditionResourceDesp);
        }
Example #2
0
        public override IDictionary <string, object> Serialize(object obj, JavaScriptSerializer serializer)
        {
            WfClientDynamicResourceDescriptor conditionResourceDesp = (WfClientDynamicResourceDescriptor)obj;

            IDictionary <string, object> dictionary = base.Serialize(obj, serializer);

            dictionary.AddNonDefaultValue("name", conditionResourceDesp.Name);
            dictionary.AddNonDefaultValue("condition", conditionResourceDesp.Condition);

            return(dictionary);
        }
Example #3
0
        public static void AreSame(this WfClientDynamicResourceDescriptor expected, WfClientDynamicResourceDescriptor actual)
        {
            if (expected != null && actual != null)
            {
                AssertStringEqual(expected.Name, actual.Name);

                expected.Condition.AreSame(actual.Condition);
            }
            else
            {
                Assert.AreEqual(expected, actual);
            }
        }
Example #4
0
        public void DynamicResourceJsonConverterTest()
        {
            WfClientJsonConverterHelper.Instance.RegisterConverters();

            WfClientDynamicResourceDescriptor resource = new WfClientDynamicResourceDescriptor("ConditionResource", "Amount > 1000");

            string data = JSONSerializerExecute.Serialize(resource);

            Console.WriteLine(data);

            WfClientDynamicResourceDescriptor deserialized = JSONSerializerExecute.Deserialize <WfClientDynamicResourceDescriptor>(data);

            resource.AreSame(deserialized);
        }
        public override void ServerToClient(WfResourceDescriptor server, ref WfClientResourceDescriptor client)
        {
            server.NullCheck("server");

            WfDynamicResourceDescriptor serverDynRes = (WfDynamicResourceDescriptor)server;

            if (client == null)
            {
                client = new WfClientDynamicResourceDescriptor(serverDynRes.Name, serverDynRes.Condition.Expression);
            }
            else
            {
                WfClientDynamicResourceDescriptor clientDynRes = (WfClientDynamicResourceDescriptor)client;

                clientDynRes.Name = serverDynRes.Name;
                clientDynRes.Condition.Expression = serverDynRes.Condition.Expression;
            }
        }
        public override void ClientToServer(WfClientResourceDescriptor client, ref WfResourceDescriptor server)
        {
            client.NullCheck("client");

            WfClientDynamicResourceDescriptor clientDynRes = (WfClientDynamicResourceDescriptor)client;

            if (server == null)
            {
                server = new WfDynamicResourceDescriptor(clientDynRes.Name, clientDynRes.Condition.Expression);
            }
            else
            {
                WfDynamicResourceDescriptor serverDynRes = (WfDynamicResourceDescriptor)server;

                serverDynRes.Name = clientDynRes.Name;
                serverDynRes.Condition.Expression = clientDynRes.Condition.Expression;
            }
        }