コード例 #1
0
ファイル: FileProcessor.cs プロジェクト: icprog/FS-SMISCloud
 /// <summary>
 /// 数据分析后处理操作
 /// </summary>
 /// <param name="ps"></param>
 void ActionAfter(ParserReturn ps)
 {
     if (ps.Error != string.Empty)
     {
         if (ps.Error == "Writing")  //文件正在写入时不处理
         {
             _logger.Warn(string.Format(@"结构物{0}下原始数据文件‘{1}’正在被占用", ps.Struct, ps.File));
         }
         else
         {
             MoveFileToError(ps.File);
             _logger.Warn(string.Format(@"结构物{0}下原始数据文件‘{1}’计算失败,错误:{2}", ps.Struct, ps.File, ps.Error));
         }
     }
     else
     {
         MoveFileToFinish(ps.File);
         _logger.InfoFormat("处理成功:模块{0},通道{1},时间{2},频率{3}Hz,时长{4}s", ps.mod, ps.ch, ps.Time, ps.freq, ps.Period);
     }
 }
コード例 #2
0
        public void ParseFile()
        {
            JsonFileFormat format = new JsonFileFormat();

            format.MaxX  = 5;
            format.MaxY  = 7;
            format.Steps = "FFF";
            format.ObstacleObjects.Add(new ObstacleSetupObj()
            {
                XLoc     = 1,
                YLoc     = 1,
                Type     = "Rock",
                Obstacle = JsonConvert.SerializeObject(new Rock())
            });
            format.ObstacleObjects.Add(new ObstacleSetupObj()
            {
                XLoc     = 2,
                YLoc     = 2,
                Type     = "Hole",
                Obstacle = JsonConvert.SerializeObject(new Hole(3, 3))
            });
            format.ObstacleObjects.Add(new ObstacleSetupObj()
            {
                XLoc     = 4,
                YLoc     = 4,
                Type     = "Spinner",
                Obstacle = JsonConvert.SerializeObject(new Spinner(true, 3))
            });
            string serialized = JsonConvert.SerializeObject(format);

            var          parser    = new FileParser();
            ParserReturn testedObj = parser.parseString(serialized);

            Assert.AreEqual(5, testedObj.MaxX);
            Assert.AreEqual(7, testedObj.MaxY);
            Assert.AreEqual("FFF".ToCharArray()[0], testedObj.Steps[0]);
            Assert.IsInstanceOfType(testedObj.ObstacleHolder.GetObstacle(1, 1), typeof(Rock));
            Assert.IsInstanceOfType(testedObj.ObstacleHolder.GetObstacle(2, 2), typeof(Hole));
            Assert.IsInstanceOfType(testedObj.ObstacleHolder.GetObstacle(4, 4), typeof(Spinner));
        }