Esempio n. 1
0
        public static void ConvertDpowToCobie(Stream input, CloudBlockBlob outputCobieBlob)
        {
            var temp = Path.GetTempFileName();

            try
            {
                var dpow      = PlanOfWork.Open(input);
                var facility  = new FacilityType();
                var exchanger = new XbimExchanger.DPoWToCOBieLite.DpoWtoCoBieLiteExchanger(dpow, facility);
                exchanger.Convert();

                using (var tw = File.CreateText(temp))
                {
                    CoBieLiteHelper.WriteJson(tw, facility);
                    tw.Close();
                }
                outputCobieBlob.UploadFromFile(temp, FileMode.Open);
            }
            finally
            {
                //tidy up
                if (File.Exists(temp))
                {
                    File.Delete(temp);
                }
            }
        }
Esempio n. 2
0
        public void ConvertDPoWToCOBieLite()
        {
            var dpow      = PlanOfWork.Open("NewtownHighSchool.dpow");
            var facility  = new FacilityType();
            var exchanger = new DPoWToCOBieLiteExchanger(dpow, facility);

            exchanger.Convert();
        }
        public void LoadDPoWFromString()
        {
            //var data = File.ReadAllText("dpowData.json");
            var data     = File.ReadAllText("NewtownHighSchool.dpow");
            var settings = new JsonSerializerSettings()
            {
            };
            var dpc = new DPoWObjectConverter();

            settings.Converters.Add(dpc);
            var dpow = JsonConvert.DeserializeObject <PlanOfWork>(data, settings);

            Assert.AreEqual("Newtown High School", dpow.Project.ProjectName);
            Assert.AreEqual("dPOW Document Numbering", dpow.ClassificationSystem[0].ClassificationName);
            Assert.IsTrue(dpow.ProjectStages.Any(ps => ps.Jobs.Any(j => j.DPoWObjects.Any(t => t.GetType() == typeof(AssemblyType)))));

            var data2 = JsonConvert.SerializeObject(dpow, settings);

            //create ZONE and AssetType
            dpow.ProjectStages[1].Jobs[0].DPoWObjects.Add(new Zone()
            {
                DPoWObjectCategory = new ClassificationReference()
                {
                    ClassificationCode = "A"
                }, DPoWObjectName = "Zone A", RequiredLOD = new RequiredLOD()
                {
                    RequiredLODCode = "123"
                }
            });
            dpow.ProjectStages[1].Jobs[0].DPoWObjects.Add(new AssetType()
            {
                DPoWObjectCategory = new ClassificationReference()
                {
                    ClassificationCode = "A"
                }, DPoWObjectName = "Zone A", RequiredLOD = new RequiredLOD()
                {
                    RequiredLODCode = "123"
                }
            });

            dpow.Save("test1.dpow");
            dpow = PlanOfWork.Open("test1.dpow");

            Assert.IsTrue(dpow.ProjectStages[1].Jobs[0].DPoWObjects.Any(t => t.GetType() == typeof(Zone)));
            Assert.IsTrue(dpow.ProjectStages[1].Jobs[0].DPoWObjects.Any(t => t.GetType() == typeof(AssetType)));
        }