Beispiel #1
0
        protected ISmartHouse LoadSmartHouse()
        {
            ISmartHouse        sh       = null;
            SmartHouseConfig   shConfig = GetConfig();
            ISmartHouseCreator shc      = Manufacture.GetManufacture(modelAssembly);
            Type smartHouseType         = shc.SmartHouseType;

            if (smartHouseType.IsSubclassOf(typeof(DbContext)))
            {
                sh = shc.CreateSmartHouse();
            }
            else
            {
                if (shConfig.UseSession)
                {
                    var Session = HttpContext.Current.Session;
                    sh = Session["SmartHouse"] as ISmartHouse;
                }
                else
                {
                    sh = LoadFromStorage();
                }
            }
            return(sh);
        }
Beispiel #2
0
        protected void Page_Load(object sender, EventArgs e)
        {
            ISmartHouseCreator shc = Manufacture.GetManufacture(modelAssembly);

            if (!IsPostBack)
            {
                CreateDeviceTypeDropDownList();
                Session["showAddDevice"] = null;
            }

            if (Session["SmartHouse"] == null)
            {
                ISmartDevice    dev;
                IBrightable     ibri;
                IHaveThermostat iterm;

                sh = shc.CreateSmartHouse();

                dev = shc.CreateDevice("SmartLamp", "l1");

                ibri = dev as IBrightable;
                ibri.BrightnessMax  = 100;
                ibri.BrightnessMin  = 10;
                ibri.BrightnessStep = 10;
                ibri.Brightness     = ibri.BrightnessMax;
                sh.AddDevice(dev);

                dev = shc.CreateDevice("SmartLamp", "l2");

                ibri = dev as IBrightable;
                ibri.BrightnessMax  = 100;
                ibri.BrightnessMin  = 10;
                ibri.BrightnessStep = 15;
                ibri.Brightness     = ibri.BrightnessMax;
                sh.AddDevice(dev);

                dev = shc.CreateDevice("Fridge", "fr1");

                iterm          = dev as IHaveThermostat;
                iterm.TempMax  = 0;
                iterm.TempMin  = -5;
                iterm.TempStep = 1;
                dev.On();
                iterm.DecreaseTemperature();
                sh.AddDevice(dev);

                dev = shc.CreateDevice("Clock", "clk1");

                dev.On();
                sh.AddDevice(dev);

                Session.Add("SmartHouse", sh);
            }
            else
            {
                sh = Session["SmartHouse"] as ISmartHouse;
            }

            RefreshControls();
        }
Beispiel #3
0
        private ISmartHouse CreateTestSet()
        {
            ISmartHouseCreator shc = Manufacture.GetManufacture(modelAssembly);

            ISmartHouse sh = null;

            ISmartDevice    dev;
            IBrightable     ibri;
            IHaveThermostat iterm;

            sh = shc.CreateSmartHouse();

            dev = shc.CreateDevice("SmartLamp", "l1");

            ibri = dev as IBrightable;
            ibri.BrightnessMax  = 100;
            ibri.BrightnessMin  = 10;
            ibri.BrightnessStep = 10;
            ibri.Brightness     = ibri.BrightnessMax;
            sh.AddDevice(dev);

            dev = shc.CreateDevice("SmartLamp", "l2");

            ibri = dev as IBrightable;
            ibri.BrightnessMax  = 100;
            ibri.BrightnessMin  = 10;
            ibri.BrightnessStep = 15;
            ibri.Brightness     = ibri.BrightnessMax;
            sh.AddDevice(dev);

            dev = shc.CreateDevice("Fridge", "fr1");

            iterm          = dev as IHaveThermostat;
            iterm.TempMax  = 0;
            iterm.TempMin  = -5;
            iterm.TempStep = 1;
            dev.On();
            iterm.DecreaseTemperature();
            sh.AddDevice(dev);

            dev = shc.CreateDevice("Clock", "clk1");

            dev.On();
            sh.AddDevice(dev);

            return(sh);
        }