コード例 #1
0
ファイル: Program.cs プロジェクト: radissoa/OLGA
        private static void CreateTopology()
        {
            Console.WriteLine("Creating Topology ... start");

            //Making sure it has not been already added
            if (context.AsQueryable <Floor>().FirstOrDefault() == null)
            {
                //Create a floor 1
                Floor floor1 = context.CreateResource <Floor>(ns + "f1");
                floor1.Name = "floor 1";
                floor1.Commit();

                //Create a floor 2
                Floor floor2 = context.CreateResource <Floor>(ns + "f2");
                floor2.Name = "floor 2";
                floor2.Commit();

                //Create a Building 1
                Building building1 = context.CreateResource <Building>(ns + "b1");
                building1.Description = "North face Building";
                building1.Name        = "b1";
                building1.Floors.Add(floor1);
                building1.Floors.Add(floor2);
                building1.Commit();

                //Create a Temperature measurement
                Temperature temp1 = context.CreateResource <Temperature>(ns + "t1");
                temp1.Description   = "this is indoor temperature";
                temp1.UnitOfMeasure = TemperatureUnit.Celsius;
                temp1.Name          = "temp1";
                temp1.TimeStamp     = DateTime.UtcNow;
                temp1.Value         = 32;
                temp1.Commit();

                //Create a Temperature Sensor
                Sensor temperatureSensor = context.CreateResource <Sensor>(ns + "s1");
                temperatureSensor.Description = "This is sensor s1";
                temperatureSensor.Name        = "TempSensor1";
                temperatureSensor.Measures.Add(temp1);
                temperatureSensor.PhysicalLocation = floor1;
                temperatureSensor.Commit();

                //Create a Humidity measurement
                Humidity humidity1 = context.CreateResource <Humidity>(ns + "h1");
                humidity1.Description   = "this is indoor humidity";
                humidity1.UnitOfMeasure = HumidityUnit.RelativeHumidity;
                humidity1.Name          = "h1";
                humidity1.TimeStamp     = DateTime.UtcNow;
                humidity1.Value         = 64;
                humidity1.Commit();

                //Create a Humidity Sensor
                Sensor humiditySensor = context.CreateResource <Sensor>(ns + "hum1");
                humiditySensor.Description = "This is humidity sensor 1";
                humiditySensor.Name        = "hum1";
                humiditySensor.Measures.Add(humidity1);
                humiditySensor.PhysicalLocation = floor2;
                humiditySensor.Commit();
            }
            else
            {
                Console.WriteLine("Topology already created, not re-adding it");
            }
            Console.WriteLine("Creating Topology ... done");
        }