static void Main(string[] args)
        {
            // Simple Factory
            IFanFactorySimple simpleFactory = new SimpleFanFactory();
            // Creation of a Fan using Simple Factory
            IFan fan = simpleFactory.CreateFan(FanType.TableFan);

            // Use created object
            fan.SwitchOn();

            // Methods Factory
            IFanFactoryMethod fanFactory = new PropellerFanFactory();

            // Creation of a Fan using Factory Method
            IFan fanMethod = fanFactory.CreateFan();

            // Use created object
            fanMethod.SwitchOn();

            // Abstract Methods Factory
            IElectricalFactory electricalFactory =
                new IndianElectricalFactory();
            //IElectricalFactory electricalFactory = new USElectricalFactory();
            IFan fanAbstract = electricalFactory.GetFan();

            fanAbstract.SwitchOn();

            Console.ReadKey();
        }
Ejemplo n.º 2
0
 public NVidia(IFan fan)
 {
     GHz     = 1;
     Voltage = 5;
     Rpm     = 100;
     Fan     = fan;
 }
Ejemplo n.º 3
0
        public static void Main()
        {
            IFanFactory simpleFactory = new FanFactory();
            IFan        fan           = simpleFactory.CreateFan(FanType.UltraFan);

            fan.SwitchOn();
        }
Ejemplo n.º 4
0
        static void Main(string[] args)
        {
            IElectricalFactory electrical_factory = new BajajFactory();
            IFan bajaj_fan = electrical_factory.GetFan();

            electrical_factory = new PhilipsFactory();
            ILight philips_light = electrical_factory.GetLight();
        }
Ejemplo n.º 5
0
        //https://www.codeproject.com/Articles/1131770/Factory-Patterns-Simple-Factory-Pattern
        static void Main()
        {
            IFanFactory simpleFanFactory = new FanFactory();
            IFan        fan = simpleFanFactory.CreateFan(FanType.TableFan);

            fan.SwitchOn();
            fan.SwitchOff();
        }
Ejemplo n.º 6
0
        public static void Main()
        {
            IFanFactory fanFactory = new FutureFanFactory();

            IFan fan = fanFactory.CreateFan();

            fan.SwitchOn();
        }
Ejemplo n.º 7
0
        public static void Main()
        {
            //IElectricalFactory bulgarianFactory = new BulgarianFactory();
            IElectricalFactory usFactory = new USFactory();

            IFan usFan = usFactory.GetFan();

            usFan.SwitchOn();
        }
Ejemplo n.º 8
0
 public AsrockH87(ICpu cpu, IRam ram, IFan cpuFan, ISolidStateDrive solidStateDrive, IGpu gpu, IBios bios)
 {
     Cpu             = cpu;
     Ram             = ram;
     CpuFan          = cpuFan;
     SolidStateDrive = solidStateDrive;
     Gpu             = gpu;
     Bios            = bios;
 }
Ejemplo n.º 9
0
            public void DoWork()
            {
                IFanFactory simpleFactory = new FanFactory();
                // Creation of a Fan using Simple Factory
                IFan fan = simpleFactory.CreateFan(FanType.TableFan);

                // Use created object
                fan.SwitchOn();
            }
Ejemplo n.º 10
0
        static void Main(string[] args)
        {
            try
            {
                Console.WriteLine("--------------------------**Factory Method Pattern**--------------------------------");

                var coolingObj = new AirConditioner().ExecuteCreation(TempEnum.Cooling, 22);
                coolingObj.Operate();
                var warmObj = new AirConditioner().ExecuteCreation(TempEnum.Warming, 45);
                warmObj.Operate();

                Console.WriteLine("--------------------------------");
                //factory method
                var coolingObj1 = AirConditioner.InitializeFactories().ExecuteCreation(TempEnum.Cooling, 10);
                coolingObj1.Operate();
                var warmingObj1 = AirConditioner.InitializeFactories().ExecuteCreation(TempEnum.Warming, 50);
                warmingObj1.Operate();

                Console.WriteLine("------------------------------------------------------------------------");

                Console.WriteLine("---------------------------**Simple Factory Pattern**-------------------------------");

                IFanFactory fanFactory = new FanFactory();
                IFan        tableFan   = fanFactory.CreateFan(FanType.TableFan);
                tableFan.SwitchOn();
                tableFan.SwitchOff();
                IFan ceilingFan = fanFactory.CreateFan(FanType.CeilingFan);
                ceilingFan.SwitchOn();
                ceilingFan.SwitchOff();
                Console.WriteLine("------------------------------------------------------------------------");

                Console.WriteLine("---------------------------**Abstract Factory Pattern**-------------------------------");

                IMobilePhone_AbstarctFactory mobilePhone = new Nokia_ConcreteFactory();
                MobileClient mc = new MobileClient(mobilePhone);

                Console.WriteLine("**NOKIA**");
                Console.WriteLine(mc.GetNormalPhoneDetails());
                Console.WriteLine(mc.GetSmartPhoneDetails());

                IMobilePhone_AbstarctFactory mobilePhone1 = new Samsung_ConcreteFactory();
                MobileClient mc1 = new MobileClient(mobilePhone);

                Console.WriteLine("**Samsung**");
                Console.WriteLine(mc1.GetNormalPhoneDetails());
                Console.WriteLine(mc1.GetSmartPhoneDetails());
            }
            catch (Exception)
            {
                throw;
            }
            finally
            {
                Console.ReadLine();
            }
        }
Ejemplo n.º 11
0
 public void AtachFan(IFan aFan)
 {
     if (!myFans.Contains(aFan))
     {
         myFans.Add(aFan);
         Console.WriteLine(String.Format("{0} dang ki la fan cua {1} thanh cong", (aFan as Fan).Name, Name));
     }
     else
     {
         Console.WriteLine(String.Format("{0} da la fan cua {1}", (aFan as Fan).Name, Name));
     }
 }
Ejemplo n.º 12
0
        //The client code is as follows:
        static void Main(string[] args)
        {
            IFanFactory fanFactory = new PropellerFanFactory();

            // Creation of a Fan using Factory Method Pattern
            IFan fan = fanFactory.CreateFan();

            // Use created object
            fan.SwitchOn();

            Console.ReadLine();
        }
Ejemplo n.º 13
0
        static void Main(string[] args)
        {
            FanFactory fanFactory = new FanFactory();
            IFan       ceilingFan = fanFactory.CreateFan(FanType.CeilingFan);
            IFan       tableFan   = fanFactory.CreateFan(FanType.TableFan);

            ceilingFan.SwitchOn();
            tableFan.SwitchOff();

            Console.WriteLine(ceilingFan.GetState());
            Console.WriteLine(tableFan.GetState());
        }
Ejemplo n.º 14
0
        public BathroomFanAutomation(string id, IFan fan, ISchedulerService schedulerService, ISettingsService settingsService)
            : base(id)
        {
            if (settingsService == null)
            {
                throw new ArgumentNullException(nameof(settingsService));
            }

            _fan = fan ?? throw new ArgumentNullException(nameof(fan));
            _schedulerService = schedulerService ?? throw new ArgumentNullException(nameof(schedulerService));

            settingsService.CreateSettingsMonitor <BathroomFanAutomationSettings>(this, s => Settings = s.NewSettings);
        }
Ejemplo n.º 15
0
        //https://www.codeproject.com/Articles/1135918/Factory-Patterns-Factory-Method-Pattern

        static void Main()
        {
            IFanFactory tableFanFactory = new TableFanFactory();
            IFan        tableFan        = tableFanFactory.CreateFan();

            tableFan.SwitchOn();
            tableFan.SwitchOff();

            IFanFactory ceilingFanFactory = new CeilingFanFactory();;
            IFan        ceilingFan        = ceilingFanFactory.CreateFan();

            ceilingFan.SwitchOn();
            ceilingFan.SwitchOff();

            IFanFactory exhaustFanFactory = new ExhaustFanFactory();;
            IFan        exhaustFan        = exhaustFanFactory.CreateFan();

            exhaustFan.SwitchOn();
            exhaustFan.SwitchOff();
        }
        static void Main(string[] args)
        {
            //Indian Factory --------------------------1 
            AbstractFactory indianFactory1 = new IndianFactory();

            //Indian Factory Products -  Fan, Tubelight
            IFan indianfan = indianFactory1.GetFan();
            ITubelight indianTubelight = indianFactory1.GetTubelight();



            //USA Factory --------------------------1
            AbstractFactory USAFactory1 = new USAFactory();

            //USA Factory Products -  Fan, Tubelight
            IFan USAfan = USAFactory1.GetFan();
            ITubelight USATubelight = USAFactory1.GetTubelight();


        }
Ejemplo n.º 17
0
        static void Main()
        {
            USElecticalFactory uSElecticalFactory = new USElecticalFactory();
            IFan fan = uSElecticalFactory.GetFan();

            fan.SwitchOn();
            fan.SwitchOff();
            ITubelight tubelight = uSElecticalFactory.GetTubelight();

            tubelight.SwitchOn();
            tubelight.SwitchOff();

            IndianElecticalFactory indianElecticalFactory = new IndianElecticalFactory();
            IFan fan2 = indianElecticalFactory.GetFan();

            fan2.SwitchOn();
            fan2.SwitchOff();
            ITubelight tubelight2 = indianElecticalFactory.GetTubelight();

            tubelight2.SwitchOn();
            tubelight2.SwitchOff();
        }
Ejemplo n.º 18
0
        static void PrintSensorsAndSubDevices(IDevice device, string prefix)
        {
            if (!device.Valid || !device.Present)
            {
                return;
            }

            device.Refresh(true);

            if (device is ISensor)
            {
                if (device is ILED)
                {
                    ILED led = (ILED)device;
                    IControllableSensor controllableLED = (IControllableSensor)device;

                    /*{
                     *  IFixedColorController _ledController = (IFixedColorController)ControllerRegistry.Get("LED.CorsairLink.SingleColor").New();
                     *  _ledController.Value = new Color(255, 1, 1);
                     *  controllableLED.Controller = _ledController;
                     * }*/

                    IController ledController = controllableLED.Controller;
                    Console.Out.WriteLine(prefix + "- " + led.Name + " = " + led.Value + " " + led.Unit.GetPostfix());
                    if (ledController != null)
                    {
                        Console.Out.WriteLine(prefix + "\t" + ((ledController == null) ? "N/A" : ledController.Name));
                    }
                    if (ledController is IFixedColorController)
                    {
                        Console.Out.WriteLine(prefix + "\t\t" + ((IFixedColorController)ledController).Value.ToString());
                    }
                }
                else if (device is IFan && device is IControllableSensor)
                {
                    IFan fan = (IFan)device;
                    IControllableSensor controllableFan = (IControllableSensor)device;

                    /*if (fan.GetParent().Name.Contains("Commander Mini"))
                     * {
                     *  IFixedNumberController _fanController = (IFixedNumberController)ControllerRegistry.Get("CorsairLink.FanFixedPercentController").New();
                     *  _fanController.Value = 40;
                     *  controllableFan.Controller = _fanController;
                     * }*/

                    IController fanController = controllableFan.Controller;
                    Console.Out.WriteLine(prefix + "- " + fan.Name + " = " + fan.Value + " " + fan.Unit.GetPostfix());
                    if (fanController != null)
                    {
                        Console.Out.WriteLine(prefix + "\t" + ((fanController == null) ? "N/A" : fanController.Name));
                    }
                    if (fanController is ICurveNumberController)
                    {
                        Console.Out.WriteLine(prefix + "\t\t" + ((ICurveNumberController)fanController).Value.ToString().Replace("}, {", "}\r\n" + prefix + "\t\t{"));
                    }
                }
                else
                {
                    ISensor sensor = (ISensor)device;
                    Console.Out.WriteLine(prefix + "- " + sensor.Name + " = " + sensor.Value + " " + sensor.Unit.GetPostfix());
                }
            }
            else
            {
                Console.Out.WriteLine(prefix + "+ " + device.Name);

                foreach (BaseDevice subDevice in device.GetSubDevices())
                {
                    PrintSensorsAndSubDevices(subDevice, prefix + "\t");
                }
            }
        }
Ejemplo n.º 19
0
 public ComputerBoxZalmanZ11(IMotherboard motherboard, IFan computerBoxFan, IPowerSupply powerSupply)
 {
     Motherboard    = motherboard;
     ComputerBoxFan = computerBoxFan;
     PowerSupply    = powerSupply;
 }
Ejemplo n.º 20
0
 public void RemoveFollower(IFan fan)
 {
     _fans.Remove(fan);
 }
Ejemplo n.º 21
0
 public void AddFollower(IFan fan)
 {
     _fans.Add(fan);
 }
Ejemplo n.º 22
0
 public void RemoveFollower(IFan fan)
 {
     OnTweetUpdate -= fan.Update;
 }
Ejemplo n.º 23
0
 public void AddFollower(IFan fan)
 {
     OnTweetUpdate += fan.Update;
 }
Ejemplo n.º 24
0
 public void DetachFan(IFan aFan)
 {
     myFans.Remove(aFan);
 }
Ejemplo n.º 25
0
 public CeilingFanOnCommand(IFan fan)
 {
     _fan = fan;
 }
Ejemplo n.º 26
0
 public ConcreteMediator(IFan fan, PowerSupplier powerSupplier)
 {
     _fan           = fan;
     _powerSupplier = powerSupplier;
 }