Пример #1
0
        private O2GValueMap GetValueMap(ValueMap valueMap)
        {
            if (valueMap == null)
            {
                return(null);
            }

            var result = this.FxRequestFactory.createValueMap();

            foreach (var v in valueMap.Values)
            {
                var p = ConvertersInternal.GetRequestParam(v.Param);
                switch (v.Type)
                {
                case ValueMapItemType.Boolean:
                    result.setBoolean(p, (v as ValueMapItem <bool>).Value);
                    break;

                case ValueMapItemType.Double:
                    result.setDouble(p, (v as ValueMapItem <double>).Value);
                    break;

                case ValueMapItemType.Int:
                    result.setInt(p, (v as ValueMapItem <int>).Value);
                    break;

                case ValueMapItemType.String:
                    result.setString(p, (v as ValueMapItem <string>).Value);
                    break;

                case ValueMapItemType.Command:
                    result.setString(p, Converters.GetRequestCommand((v as ValueMapItem <RequestCommand>).Value));
                    break;
                }
            }

            foreach (var child in valueMap.ChildMaps)
            {
                result.appendChild(GetValueMap(child));
            }

            return(result);
        }