Ejemplo n.º 1
0
        public override ParameterBuilder Restore(ParameterBuilderDTO dto)
        {
            var sb = dto as LikeBuilderDTO;
            if (sb == null)
                return base.Restore(dto);

            // ensure we can restore the MatchMode from the name of the static fields on MatchMode
            var modes = typeof(MatchMode).GetFields(BindingFlags.Public | BindingFlags.Static);
            var validNames = new StringBuilder();
            FieldInfo mode = null;
            foreach (var f in modes)
            {
                validNames.AppendFormat("{0}, ", f.Name);
                if (mode == null && f.FieldType == typeof(MatchMode) && f.Name.Equals(sb.Mode))
                    mode = f;
            }

            if (mode == null)
            {
                throw new ArgumentException(String.Format("MatchMode {0} does not match an internal static field of the same name.  Valid values are {1}.",
                    sb.Mode, validNames.Remove(validNames.Length - 2, 2)));
            }

            return new LikeBuilder()
            {
                Label = sb.Label,
                Mode = (MatchMode)mode.GetValue(null)
            };
        }
Ejemplo n.º 2
0
        public override ParameterBuilder Restore(ParameterBuilderDTO dto)
        {
            var sb = dto as JunctionBuilderDTO;
            if (sb == null)
                return base.Restore(dto);

            return new JunctionBuilder("Conjunction".Equals(sb.Type) ? JunctionType.Conjunction : JunctionType.Disjunction)
            {
                Label = sb.Label,
                Other = base.Chain.Restore(sb.Other)
            };
        }
Ejemplo n.º 3
0
        public override ParameterBuilder Restore(ParameterBuilderDTO dto)
        {
            var sb = dto as NotBuilderDTO;
            if (sb == null)
                return base.Restore(dto);

            return new NotBuilder()
            {
                Label = sb.Label,
                Other = Chain.Restore(sb.Other)
            };
        }
Ejemplo n.º 4
0
        public override ParameterBuilder Restore(ParameterBuilderDTO dto)
        {
            var sb = dto as SimpleBuilderDTO;
            if (sb == null)
                return base.Restore(dto);

            return new SimpleBuilder()
            {
                Label = sb.Label,
                Operator = sb.Operator
            };
        }
Ejemplo n.º 5
0
        public override ParameterBuilder Restore(ParameterBuilderDTO dto)
        {
            var sb = dto as BooleanBuilderDTO;
            if (sb == null)
                return base.Restore(dto);

            return new BooleanBuilder()
            {
                Label = sb.Label,
                Value = sb.Value
            };
        }
Ejemplo n.º 6
0
 public override ParameterBuilder Restore(ParameterBuilderDTO dto)
 {
     return Source;
 }