コード例 #1
0
ファイル: Traverser.cs プロジェクト: t1633361/2015-03_Expo
        private IDeviceGroup Traverse(DeviceGroupConfig deviceGroupConfig, Stack <IDeviceGroup> stack = null)
        {
            if (stack == null)
            {
                stack = new Stack <IDeviceGroup>();
            }

            var dt = ServiceLocator.GetInstance <IDeviceGroup>();

            //TODO
            //dt.Init(deviceTreeConfig)

            stack.Push(dt);


            foreach (var childDeviceTreeConfig in deviceGroupConfig.GroupConfigCollection)
            {
                var childDt = Traverse(childDeviceTreeConfig, stack);
                stack.Peek().DeviceGroups.Add(childDt);
            }

            stack.Pop();

            return(dt);
        }
コード例 #2
0
 private IDeviceGroup Get(DeviceGroupConfig deviceGroupConfig)
 {
     return(TraverseEx.TraverseMap(deviceGroupConfig,
                                   x => DeviceGroupFactory.Create(x),
                                   x => x.GroupConfigCollection,
                                   (s, t) => s.DeviceGroups.Add(t)));
 }
コード例 #3
0
        public IDeviceGroup Map(DeviceGroupConfig deviceGroupConfig)
        {
            var deviceGroup = Mapper.Map <DeviceGroupConfig, IDeviceGroup>(deviceGroupConfig);

            AppendParent(deviceGroup);

            return(deviceGroup);
        }
コード例 #4
0
ファイル: Traverser.cs プロジェクト: t1633361/2015-03_Expo
        private IDeviceGroup Traverse(DeviceGroupConfig deviceGroupConfig)
        {
            return(TraverseEx.TraverseMap(deviceGroupConfig,
                                          x =>
            {
                var dt = ServiceLocator.GetInstance <IDeviceGroup>();

                //TODO
                //dt.Init(deviceTreeConfig)
                return dt;
            },
                                          x => x.GroupConfigCollection,
                                          (s, t) => s.DeviceGroups.Add(t)));
        }
コード例 #5
0
ファイル: Traverser.cs プロジェクト: t1633361/2015-03_Expo
//        private Stack<IDeviceTree> _stack;

        public IDeviceGroup Init(DeviceGroupConfig deviceGroupConfig)
        {
            var dt = Traverse(deviceGroupConfig);

            return(dt);
        }